D7snShanfengT/应收应付/U_YSZDList_YHZ.pas

216 lines
6.7 KiB
ObjectPascal
Raw Permalink Normal View History

2026-02-26 09:41:35 +08:00
unit U_YSZDList_YHZ;
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, BtnEdit, RM_e_Xls;
type
TfrmYSZDList_YHZ = 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;
cxGridPopupMenu2: TcxGridPopupMenu;
DS_HZ: TDataSource;
CDS_HZ: TClientDataSet;
Label1: TLabel;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
v2Column2: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
v2Qty: TcxGridDBColumn;
v2yfk: TcxGridDBColumn;
v2fk: TcxGridDBColumn;
v2yfkye: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
Label6: TLabel;
P_CodeName: TEdit;
Order_Print: TClientDataSet;
RMXLSExport1: TRMXLSExport;
FactoryName: TComboBox;
v2TeXing: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
Label13: TLabel;
Label14: TLabel;
SGFangshi: TEdit;
TeXing: TEdit;
v2GCName: TcxGridDBColumn;
Label2: TLabel;
GCName: 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 FormCreate(Sender: TObject);
procedure v2SselPropertiesChange(Sender: TObject);
private
{ Private declarations }
procedure InitGrid();
public
{ Public declarations }
RKFlag,FCYID:String;
end;
var
frmYSZDList_YHZ: TfrmYSZDList_YHZ;
implementation
uses
U_DataLink,U_Fun,U_ZDYHelp;
{$R *.dfm}
procedure TfrmYSZDList_YHZ.InitGrid();
var FMoney,FUSDMoney:double;
begin
try
ADOQueryMain.DisableControls;
FMoney:=0;
FUSDMoney:=0;
with ADOQueryMain do
begin
Close;
SQL.Clear;
sql.Add(' select AA.CRTime,factoryName,GCName,P_CodeName,TeXing,SGFangshi,Sum(Qty) Qty,Sum(yfk) yfk,Sum(fk) fk,Sum(yfkye) yfkye');
sql.add(' from (select convert(varchar(7),A.CRTime,120) CRTime,Status,GCName,factoryName,P_CodeName,TeXing,SGFangshi,Qty,yfk=cast(Money as decimal(18,2))');
sql.add(',fk=cast(0 as decimal(18,2)),cast(0 as decimal(18,2)) yfkye');
sql.Add(' from YF_Money_CR A');
sql.Add(' where A.CRType='<>տ<EFBFBD><D5BF>Ǽ<EFBFBD>''');
sql.add(' union all');
sql.Add(' select convert(varchar(7),A.CRTime,120) CRTime,Status,GCName,factoryName,P_CodeName,TeXing,SGFangshi,cast(0 as decimal(18,2)) Qty,cast(0 as decimal(18,2)) yfk ');
sql.add(',fk=cast(Money as decimal(18,2)),cast(0 as decimal(18,2)) yfkye');
sql.Add(' from YF_Money_CR A');
sql.Add(' where A.CRType=''<27>տ<EFBFBD><D5BF>Ǽ<EFBFBD>'') AA');
sql.add(' where 1=1');
sql.add(' and FactoryName='''+trim(FactoryName.Text)+'''');
if P_CodeName.Text<>'' then
sql.add(' and P_CodeName like '''+'%'+trim(P_CodeName.Text)+'%'+'''');
if TeXing.Text<>'' then
sql.add(' and TeXing like '''+'%'+trim(TeXing.Text)+'%'+'''');
if SGFangshi.Text<>'' then
sql.add(' and SGFangshi like '''+'%'+trim(SGFangshi.Text)+'%'+'''');
sql.add(' and isnull(AA.status,''0'')<>''0'' ');
sql.Add(' group by AA.CRTime,factoryName,GCName,P_CodeName,TeXing,SGFangshi');
sql.Add(' order by AA.CRTime');
Open;
end;
SCreateCDS20(ADOQueryMain,CDS_HZ);
CDS_HZ.DisableControls;
with ADOQueryMain do
begin
first;
while not eof do
begin
with CDS_HZ do
begin
append;
fieldbyname('Ssel').AsBoolean:=false;
fieldbyname('CRTime').Value:=ADOQueryMain.fieldbyname('CRTime').asstring;
fieldbyname('factoryName').Value:=ADOQueryMain.fieldbyname('factoryName').AsString;
fieldbyname('GCName').Value:=ADOQueryMain.fieldbyname('GCName').AsString;
fieldbyname('P_CodeName').Value:=ADOQueryMain.fieldbyname('P_CodeName').AsString;
fieldbyname('TeXing').Value:=ADOQueryMain.fieldbyname('TeXing').AsString;
fieldbyname('SGFangshi').Value:=ADOQueryMain.fieldbyname('SGFangshi').AsString;
fieldbyname('Qty').Value:=ADOQueryMain.fieldbyname('Qty').AsFloat;
fieldbyname('yfk').Value:=ADOQueryMain.fieldbyname('yfk').AsFloat;
fieldbyname('fk').Value:=ADOQueryMain.fieldbyname('fk').AsFloat;
FMoney:=FMoney+ADOQueryMain.fieldbyname('yfk').AsFloat-ADOQueryMain.fieldbyname('fk').AsFloat;
fieldbyname('yfkye').Value:=FMoney;
post;
end;
next;
end;
end;
CDS_HZ.EnableControls;
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmYSZDList_YHZ.FormDestroy(Sender: TObject);
begin
frmYSZDList_YHZ:=nil;
end;
procedure TfrmYSZDList_YHZ.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmYSZDList_YHZ.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(self.Caption,Tv2,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2');
Close;
end;
procedure TfrmYSZDList_YHZ.FormShow(Sender: TObject);
var fsj:string;
begin
ReadCxGrid(self.Caption,Tv2,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2');
fsj:='select distinct (A.FactoryName) name from YF_Money_CR A where A.CRType='<>տ<EFBFBD><D5BF>Ǽ<EFBFBD>'' ';
SInitComBoxBySql(ADOQueryCmd,FactoryName,False,fsj);
//InitGrid();
end;
procedure TfrmYSZDList_YHZ.TBRafreshClick(Sender: TObject);
begin
Toolbar1.SetFocus;
InitGrid();
end;
procedure TfrmYSZDList_YHZ.ToolButton2Click(Sender: TObject);
var
fsj:string;
begin
initgrid();
end;
procedure TfrmYSZDList_YHZ.FactoryNameChange(Sender: TObject);
begin
ToolButton2.Click;
end;
procedure TfrmYSZDList_YHZ.ToolButton1Click(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then Exit;
//TcxGridToExcel(self.Caption,cxgrid2);
SelExportData(Tv2,ADOQueryMain,<>տ<EFBFBD><D5BF><EFBFBD>ͳ<EFBFBD><CDB3><EFBFBD>б<EFBFBD>');
end;
procedure TfrmYSZDList_YHZ.FormCreate(Sender: TObject);
begin
cxGrid2.Align:=AlClient;
end;
procedure TfrmYSZDList_YHZ.v2SselPropertiesChange(Sender: TObject);
begin
toolBar1.SetFocus;
end;
end.