D7snShanfengT/应收应付/U_YSSKList_KP.pas
DESKTOP-E401PHE\Administrator c363cb75a7 调整之后的山凤水泥厂
2026-02-26 09:41:35 +08:00

254 lines
8.8 KiB
ObjectPascal
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

unit U_YSSKList_KP;
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;
type
TfrmYSSKList_KP = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBClose: TToolButton;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
Panel1: TPanel;
ToolButton2: TToolButton;
ADOQueryMain: TADOQuery;
ToolButton1: TToolButton;
RM1: TRMGridReport;
RMDB_Main: TRMDBDataSet;
Label3: TLabel;
Label2: TLabel;
Label6: TLabel;
begdate: TDateTimePicker;
Enddate: TDateTimePicker;
cxGridPopupMenu2: TcxGridPopupMenu;
DS_HZ: TDataSource;
CDS_HZ: TClientDataSet;
cxGrid1: TcxGrid;
TV1: TcxGridDBTableView;
cxGridDBColumn8: TcxGridDBColumn;
cxGridDBColumn10: TcxGridDBColumn;
cxGridDBColumn11: TcxGridDBColumn;
cxGridDBColumn12: TcxGridDBColumn;
cxGridLevel2: TcxGridLevel;
V1GCName: TcxGridDBColumn;
cxSplitter1: TcxSplitter;
GCName: TComboBox;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
v2Column2: TcxGridDBColumn;
v2YFName: TcxGridDBColumn;
v2GCName: TcxGridDBColumn;
v2ComTaiTou: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
v2P_Spec: TcxGridDBColumn;
v2FKType: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v2Column7: TcxGridDBColumn;
v2KPMoney: TcxGridDBColumn;
v2Money: TcxGridDBColumn;
v2QtyUnit: TcxGridDBColumn;
v2Column10: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
v2FKTaitou: TcxGridDBColumn;
YForder_Sub: TClientDataSet;
DataSource1: TDataSource;
V1FKTaitou: TcxGridDBColumn;
Label7: TLabel;
FKTaitou: TEdit;
V1RMBSQMoney: TcxGridDBColumn;
Panel3: TPanel;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label17: TLabel;
Label18: TLabel;
Label8: TLabel;
Label9: TLabel;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
ComTaiTou: TEdit;
YFName: TEdit;
P_CodeName: TEdit;
P_Spec: TEdit;
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 GCNameChange(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure TV1CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure YFNameChange(Sender: TObject);
private
{ Private declarations }
procedure InitGrid();
public
fDParameters1:string;
{ Public declarations }
RKFlag,FCYID,FFactoryName:String;
end;
var
frmYSSKList_KP: TfrmYSSKList_KP;
implementation
uses
U_DataLink,U_Fun,U_ZDYHelp;
{$R *.dfm}
procedure TfrmYSSKList_KP.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
SQL.Clear;
sql.add('select AA.*,RMBKPWSK=(isnull(RMBSQKP,0)+isnull(RMBBQKP,0)-isnull(RMBFKMoney,0)-isnull(RMBSQMoney,0)) ');
sql.add('From (select A.GCName,A.FKTaitou');
sql.add(',RMBSQKP=(select isnull(Sum(KPMoney),0) from YF_Money_CR B ');
sql.add('where B.CRTime<'''+trim(formatdatetime('yyyy-MM-dd',begdate.DateTime))+'''');
sql.add('and B.BZType<>''USD'' and B.BZType<>''$'' and B.GCName=A.GCName ');
sql.add('and B.CRFlag='<><D3A6><EFBFBD><EFBFBD>'' and CRType='<>տƱ<EEB7A2>Ǽ<EFBFBD>'' and isnull(B.FKTaiTou,'''')=isnull(A.FKTaitou,''''))');
sql.add(',RMBBQKP=(select isnull(Sum(KPMoney),0) from YF_Money_CR B ');
sql.add('where B.CRTime>='''+trim(formatdatetime('yyyy-MM-dd',begdate.DateTime))+''' ');
sql.add(' and B.CRTime<'''+trim(formatdatetime('yyyy-MM-dd',Enddate.DateTime))+''' ');
sql.add('and B.GCName=A.GCName and isnull(B.FKTaiTou,'''')=isnull(A.FKTaitou,'''') and B.BZType<>''USD'' and B.BZType<>''$'' ');
sql.add('and B.CRFlag='<><D3A6><EFBFBD><EFBFBD>'' and CRType='<>տƱ<EEB7A2>Ǽ<EFBFBD>'')');
sql.add(',RMBFKMoney=(select isnull(Sum(Money),0)+isnull(Sum(SXMoney),0) from YF_Money_CR B ');
sql.add('where B.CRTime>='''+trim(formatdatetime('yyyy-MM-dd',begdate.DateTime))+''' ');
sql.add(' and B.CRTime<'''+trim(formatdatetime('yyyy-MM-dd',Enddate.DateTime))+''' ');
sql.add(' and B.CRType=''<27>տ<EFBFBD><D5BF>Ǽ<EFBFBD>'' and B.Status=''2'' and B.BZType<>''USD'' and B.BZType<>''$'' ');
sql.add(' and B.GCName=A.GCName and isnull(B.FKTaiTou,'''')=isnull(A.FKTaitou,'''') and B.CRFlag='<><D3A6><EFBFBD><EFBFBD>'' and B.YFName<>''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'') ');
sql.add(',RMBSQMoney=(select isnull(Sum(Money),0)+isnull(Sum(SXMoney),0) from YF_Money_CR B ');
sql.add('where B.CRTime<'''+trim(formatdatetime('yyyy-MM-dd',begdate.DateTime))+''' ');
sql.add(' and B.CRType=''<27>տ<EFBFBD><D5BF>Ǽ<EFBFBD>'' and B.Status=''2'' and B.BZType<>''USD'' and B.BZType<>''$'' ');
sql.add(' and B.GCName=A.GCName and isnull(B.FKTaiTou,'''')=isnull(A.FKTaitou,'''') and B.CRFlag='<><D3A6><EFBFBD><EFBFBD>'' and B.YFName<>''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'') ');
sql.add('from (select distinct GCName,FKTaitou from YF_Money_CR where CRFlag='<><D3A6><EFBFBD><EFBFBD>'' and CRType='<>տƱ<EEB7A2>Ǽ<EFBFBD>'')A )AA ');
sql.add('where 1=1');
if GCName.Text<>'' then
sql.add(' and AA.GCName='''+Trim(GCName.Text)+'''');
if FKTaitou.Text<>'' then
sql.add(' and AA.FKTaitou='''+trim(FKTaitou.Text)+'''');
Open;
end;
SCreateCDS20(ADOQueryMain,CDS_HZ);
SInitCDSData20(ADOQueryMain,CDS_HZ);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmYSSKList_KP.FormDestroy(Sender: TObject);
begin
frmYSSKList_KP:=nil;
end;
procedure TfrmYSSKList_KP.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmYSSKList_KP.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(<><D3A6><EFBFBD>տ<EFBFBD>ͳ<EFBFBD><CDB3>',Tv2,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
WriteCxGrid(<><D3A6><EFBFBD>տ<EFBFBD>ͳ<EFBFBD><CDB3>1',Tv2,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
Close;
end;
procedure TfrmYSSKList_KP.FormShow(Sender: TObject);
var fsj:string;
begin
ReadCxGrid(<><D3A6><EFBFBD>տ<EFBFBD>ͳ<EFBFBD><CDB3>',Tv2,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
ReadCxGrid(<><D3A6><EFBFBD>տ<EFBFBD>ͳ<EFBFBD><CDB3>1',Tv2,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
Enddate.DateTime:=SGetServerDate(ADOQueryTemp);
begdate.DateTime:=Enddate.DateTime-7;
fsj:='select distinct (A.GCName) name from YF_Money_CR A where A.CRType='<>տ<EFBFBD><D5BF>Ǽ<EFBFBD>'' ';
SInitComBoxBySql(ADOQueryCmd,GCName,False,fsj);
GCName.Text:=Trim(FFactoryName);
InitGrid();
end;
procedure TfrmYSSKList_KP.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmYSSKList_KP.ToolButton2Click(Sender: TObject);
var
fsj:string;
begin
initgrid();
end;
procedure TfrmYSSKList_KP.GCNameChange(Sender: TObject);
begin
ToolButton2.Click;
end;
procedure TfrmYSSKList_KP.ToolButton1Click(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then Exit;
SelExportData(Tv2,ADOQueryMain,<><D3A6><EFBFBD>տ<EFBFBD>ͳ<EFBFBD><CDB3><EFBFBD>б<EFBFBD>');
end;
procedure TfrmYSSKList_KP.TV1CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
if CDS_HZ.IsEmpty then exit;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add(' select AA.* ');
sql.add(' from (select A.*');
sql.Add(' from YF_Money_CR A');
sql.Add(' where A.CRTime>='''+FormatDateTime('yyyy-MM-dd',begdate.DateTime)+''' ');
sql.Add(' and A.CRTime<'''+FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)+''' ');
sql.Add(' and A.CRType='<>տƱ<EEB7A2>Ǽ<EFBFBD>'' ');
sql.add(' union all');
sql.Add(' select A.*');
sql.Add(' from YF_Money_CR A');
sql.Add(' where A.CRTime>='''+FormatDateTime('yyyy-MM-dd',begdate.DateTime)+''' ');
sql.Add(' and A.CRTime<'''+FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)+''' ');
sql.Add(' and A.CRType=''<27>տ<EFBFBD><D5BF>Ǽ<EFBFBD>'' ');
sql.Add(' and A.status=''2'' ) AA');
sql.add(' where AA.GCName='''+trim(CDS_HZ.fieldbyname('GCName').AsString)+'''');
sql.add(' and isnull(AA.FKTaitou,'''')='''+trim(CDS_HZ.fieldbyname('FKTaitou').AsString)+'''');
sql.add(' order by AA.CRtime');
Open;
end;
SCreateCDS20(ADOQueryCmd,YForder_Sub);
SInitCDSData20(ADOQueryCmd,YForder_Sub);
end;
procedure TfrmYSSKList_KP.YFNameChange(Sender: TObject);
begin
//if YForder_Sub.IsEmpty then exit;
SDofilter(ADOQueryCmd,Trim(SGetFilters(Panel3,1,2)));
SCreateCDS20(ADOQueryCmd,YForder_Sub);
SInitCDSData20(ADOQueryCmd,YForder_Sub);
end;
end.