D7myChuangpin/应收应付1/U_YSSKList_KPFK.pas
“ddf” ece69a5ac1 1
2024-07-23 20:18:14 +08:00

255 lines
8.9 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_KPFK;
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_KPFK = 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;
V1FactoryName: TcxGridDBColumn;
cxSplitter1: TcxSplitter;
FactoryName: TComboBox;
YForder_Sub: TClientDataSet;
DataSource1: TDataSource;
V1FKTaitou: TcxGridDBColumn;
Label7: TLabel;
FKTaitou: TEdit;
V1RMBSQMoney: TcxGridDBColumn;
Panel2: TPanel;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
v2Column2: TcxGridDBColumn;
v2factoryName: TcxGridDBColumn;
v2FKTaitou: TcxGridDBColumn;
v2YFName: TcxGridDBColumn;
v2ComTaiTou: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
v2P_Spec: TcxGridDBColumn;
v2FKType: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v2QtyUnit: TcxGridDBColumn;
v2Column7: TcxGridDBColumn;
v2KPMoney: TcxGridDBColumn;
v2Money: TcxGridDBColumn;
v2Column10: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
Panel3: TPanel;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label17: TLabel;
Label18: TLabel;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
ComTaiTou: TEdit;
YFName: TEdit;
Label1: TLabel;
P_CodeName: TEdit;
Label4: TLabel;
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 FactoryNameChange(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_KPFK: TfrmYSSKList_KPFK;
implementation
uses
U_DataLink,U_Fun,U_ZDYHelp;
{$R *.dfm}
procedure TfrmYSSKList_KPFK.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.factoryName,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.factoryName=A.factoryName ');
sql.add('and B.CRFlag='<><D3A6><EFBFBD><EFBFBD>'' and CRType='<><D3A6><EFBFBD>Ʊ<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+1))+''' ');
sql.add('and B.factoryName=A.factoryName and isnull(B.FKTaiTou,'''')=isnull(A.FKTaitou,'''') and B.BZType<>''USD'' and B.BZType<>''$'' ');
sql.add('and B.CRFlag='<><D3A6><EFBFBD><EFBFBD>'' and CRType='<><D3A6><EFBFBD>Ʊ<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+1))+''' ');
sql.add(' and B.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD>'' and B.Status>0 and B.BZType<>''USD'' and B.BZType<>''$'' ');
sql.add(' and B.factoryName=A.factoryName and isnull(B.FKTaiTou,'''')=isnull(A.FKTaitou,'''') and B.CRFlag='<><D3A6><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><EFBFBD><EFBFBD>Ǽ<EFBFBD>'' and B.Status>0 and B.BZType<>''USD'' and B.BZType<>''$'' ');
sql.add(' and B.factoryName=A.factoryName and isnull(B.FKTaiTou,'''')=isnull(A.FKTaitou,'''') and B.CRFlag='<><D3A6><EFBFBD><EFBFBD>'') ');
sql.add('from (select distinct factoryName,FKTaitou from YF_Money_CR where CRFlag='<><D3A6><EFBFBD><EFBFBD>'' and CRType='<><D3A6><EFBFBD>Ʊ<EEB7A2>Ǽ<EFBFBD>'')A )AA ');
sql.add('where 1=1');
if factoryName.Text<>'' then
sql.add(' and AA.factoryName='''+Trim(factoryName.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_KPFK.FormDestroy(Sender: TObject);
begin
frmYSSKList_KPFK:=nil;
end;
procedure TfrmYSSKList_KPFK.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmYSSKList_KPFK.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_KPFK.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.FactoryName) name from YF_Money_CR A where A.CRType='<><D3A6><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD>'' ';
SInitComBoxBySql(ADOQueryCmd,FactoryName,False,fsj);
FactoryName.Text:=Trim(FFactoryName);
InitGrid();
end;
procedure TfrmYSSKList_KPFK.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmYSSKList_KPFK.ToolButton2Click(Sender: TObject);
var
fsj:string;
begin
initgrid();
end;
procedure TfrmYSSKList_KPFK.FactoryNameChange(Sender: TObject);
begin
ToolButton2.Click;
end;
procedure TfrmYSSKList_KPFK.ToolButton1Click(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then Exit;
SelExportData(Tv2,ADOQueryMain,<><D3A6><EFBFBD>տ<EFBFBD>ͳ<EFBFBD><CDB3><EFBFBD>б<EFBFBD>');
end;
procedure TfrmYSSKList_KPFK.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='<><D3A6><EFBFBD>Ʊ<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><EFBFBD><EFBFBD>Ǽ<EFBFBD>'' ');
sql.Add(' and A.status>0 ) AA');
sql.add(' where AA.FactoryName='''+trim(CDS_HZ.fieldbyname('FactoryName').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_KPFK.YFNameChange(Sender: TObject);
begin
//if YForder_Sub.IsEmpty then exit;
SDofilter(ADOQueryCmd,SGetFilters(Panel3,1,2));
SCreateCDS20(ADOQueryCmd,YForder_Sub);
SInitCDSData20(ADOQueryCmd,YForder_Sub);
end;
end.