D7snShanfengT/山峰贸易管理/U_CLShuiPiao_CX.pas
DESKTOP-E401PHE\Administrator c363cb75a7 调整之后的山凤水泥厂
2026-02-26 09:41:35 +08:00

318 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_CLShuiPiao_CX;
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, cxCheckBox, RM_Common,
RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, Menus,
cxCalendar, cxButtonEdit, cxTextEdit, cxPC, cxLookAndFeels,
cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu;
type
TfrmCLShuiPiao_CX = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBExport: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
cxGridPopupMenu1: TcxGridPopupMenu;
Label1: TLabel;
Label2: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
CDS_Main: TClientDataSet;
RM1: TRMGridReport;
RMDBMain: TRMDBDataSet;
RMXLSExport1: TRMXLSExport;
RMDBHZ: TRMDBDataSet;
CDS_HZ: TClientDataSet;
CDS_PRT: TClientDataSet;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
Label4: TLabel;
Label12: TLabel;
GCName: TEdit;
Label3: TLabel;
SJName: TEdit;
Label5: TLabel;
CLSpec: TEdit;
JPSpec: TEdit;
Label7: TLabel;
Label8: TLabel;
SPType: TEdit;
Label9: TLabel;
CheHao: TEdit;
cxGrid2: TcxGrid;
Tv1: TcxGridDBTableView;
v1Ssel: TcxGridDBColumn;
v1CRTime: TcxGridDBColumn;
vGCName: TcxGridDBColumn;
v1SJName: TcxGridDBColumn;
v1CLSpec: TcxGridDBColumn;
v1JPSpec: TcxGridDBColumn;
v1CheHao: TcxGridDBColumn;
v2CPFLQty: TcxGridDBColumn;
v1GLQty: TcxGridDBColumn;
v1CLQty: TcxGridDBColumn;
v1SPQty: TcxGridDBColumn;
v1SPType: TcxGridDBColumn;
v1KKMoney: TcxGridDBColumn;
v1Note: TcxGridDBColumn;
cxGrid2Level1: TcxGridLevel;
RadioGroup1: TRadioGroup;
cxTabControl1: TcxTabControl;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure ConNoMChange(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure SPIDChange(Sender: TObject);
procedure SPSpecChange(Sender: TObject);
procedure GCNameChange(Sender: TObject);
procedure RadioGroup1Click(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
private
canshu1,canshu2,canshu3:string;
procedure InitGrid();
procedure setstatus();
{ Private declarations }
public
formid:string;
{ Public declarations }
end;
var
frmCLShuiPiao_CX: TfrmCLShuiPiao_CX;
implementation
uses
U_DataLink,U_RTFun,U_SXCKInPut, U_JGSXCKInPut, U_CLShuiPiao_Sub;
{$R *.dfm}
procedure TfrmCLShuiPiao_CX.setstatus();
begin
end;
procedure TfrmCLShuiPiao_CX.FormDestroy(Sender: TObject);
begin
frmCLShuiPiao_CX:=nil;
end;
procedure TfrmCLShuiPiao_CX.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmCLShuiPiao_CX.FormCreate(Sender: TObject);
begin
EndDate.DateTime:=SGetServerDate10(ADOQueryTemp);
BegDate.DateTime:=EndDate.DateTime;
canshu1:=Trim(DParameters1);
canshu2:=Trim(DParameters2);
canshu3:=Trim(DParameters3);
end;
procedure TfrmCLShuiPiao_CX.InitGrid();
var i:integer;
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
sql.Add(' select ');
if RadioGroup1.ItemIndex=2 then
sql.Add(' convert(varchar(10),A.CRTime,120) CRTime');
if RadioGroup1.ItemIndex=1 then
sql.Add(' convert(varchar(7),A.CRTime,120) CRTime');
if RadioGroup1.ItemIndex=0 then
sql.Add(' convert(varchar(4),A.CRTime,120) CRTime');
sql.Add(',GCName,SJName,CLSpec,JPSpec,CheHao,SPType,Max(Note) Note,Sum(CPFLQty) CPFLQty,Sum(GLQty) GLQty');
SQL.Add(',Sum(CLQty) CLQty,Sum(SPQty) SPQty,Sum(KKMoney) KKMoney');
sql.Add(' from CL_SP_Main A');
SQL.Add(' where 1=1 ');
if cxTabControl1.TabIndex=0 then
begin
sql.Add(' and A.SPType=''<27><>ʱ''');
end;
if cxTabControl1.TabIndex=1 then
begin
sql.Add(' and A.SPType=''<27><><EFBFBD><EFBFBD>''');
end;
if cxTabControl1.TabIndex=2 then
begin
sql.Add(' and A.SPType='<><CAA3><EFBFBD><EFBFBD>ת''');
end;
if cxTabControl1.TabIndex=3 then
begin
sql.Add(' and A.SPType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת''');
end;
if cxTabControl1.TabIndex=4 then
begin
sql.Add(' and A.SPType<>''<27><>ʱ'' and A.SPType<>''<27><><EFBFBD><EFBFBD>'' and A.SPType<>'<><CAA3><EFBFBD><EFBFBD>ת'' and A.SPType<>''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת''');
end;
if RadioGroup1.ItemIndex=2 then
begin
sql.add(' and A.CRTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''');
sql.Add(' and A.CRTime<'''+Trim(FormatDateTime('yyyy-MM-dd',enddate.DateTime+1))+'''');
sql.add(' group by convert(varchar(10),A.CRTime,120),GCName,SJName,CLSpec,JPSpec,CheHao,SPType');
SQL.Add(' order by convert(varchar(10),A.CRTime,120),A.GCName');
end;
if RadioGroup1.ItemIndex=1 then
begin
sql.add(' and convert(varchar(7),A.CRTime,120)>='''+Trim(FormatDateTime('yyyy-MM',BegDate.DateTime))+'''');
sql.Add(' and convert(varchar(7),A.CRTime,120)<='''+Trim(FormatDateTime('yyyy-MM',enddate.DateTime))+'''');
sql.add(' group by convert(varchar(7),A.CRTime,120),GCName,SJName,CLSpec,JPSpec,CheHao,SPType');
SQL.Add(' order by convert(varchar(7),A.CRTime,120),A.GCName');
end;
if RadioGroup1.ItemIndex=0 then
begin
sql.add(' and convert(varchar(4),A.CRTime,120)>='''+Trim(FormatDateTime('yyyy',BegDate.DateTime))+'''');
sql.Add(' and convert(varchar(4),A.CRTime,120)<='''+Trim(FormatDateTime('yyyy',enddate.DateTime+1))+'''');
sql.add(' group by convert(varchar(4),A.CRTime,120),GCName,SJName,CLSpec,JPSpec,CheHao,SPType');
SQL.Add(' order by convert(varchar(4),A.CRTime,120),A.GCName');
end;
Open;
end;
SCreateCDS20(ADOQueryMain,CDS_Main);
SInitCDSData20(ADOQueryMain,CDS_Main);
if CDS_Main.IsEmpty=False then
begin
for i:=1 to 33-CDS_Main.RecordCount do
begin
with CDS_Main do
begin
Append;
post;
end;
end;
end;
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmCLShuiPiao_CX.TBRafreshClick(Sender: TObject);
begin
BegDate.SetFocus;
InitGrid();
end;
procedure TfrmCLShuiPiao_CX.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
end;
end;
procedure TfrmCLShuiPiao_CX.TBCloseClick(Sender: TObject);
begin
WriteCxGrid('ˮƱ<CBAE>б<EFBFBD>FM11',Tv1,'ˮƱ<CBAE>ֿ<EFBFBD>');
Close;
end;
procedure TfrmCLShuiPiao_CX.FormShow(Sender: TObject);
begin
ReadCxGrid('ˮƱ<CBAE>б<EFBFBD>FM11',Tv1,'ˮƱ<CBAE>ֿ<EFBFBD>');
if formid<>'2' then
begin
RadioGroup1.Visible:=false;
end
else
RadioGroup1.Visible:=true;
setstatus();
InitGrid();
end;
procedure TfrmCLShuiPiao_CX.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then exit;
TcxGridToExcel('ˮƱ<CBAE>б<EFBFBD>',cxGrid2);
end;
procedure TfrmCLShuiPiao_CX.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 TfrmCLShuiPiao_CX.N1Click(Sender: TObject);
begin
SelOKNo(CDS_Main,True);
end;
procedure TfrmCLShuiPiao_CX.N2Click(Sender: TObject);
begin
SelOKNo(CDS_Main,False);
end;
procedure TfrmCLShuiPiao_CX.SPIDChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmCLShuiPiao_CX.SPSpecChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmCLShuiPiao_CX.GCNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmCLShuiPiao_CX.RadioGroup1Click(Sender: TObject);
begin
if RadioGroup1.ItemIndex=2 then
begin
BegDate.Format:='yyyy-MM-dd';
endDate.Format:='yyyy-MM-dd';
end;
if RadioGroup1.ItemIndex=1 then
begin
BegDate.Format:='yyyy-MM';
endDate.Format:='yyyy-MM';
end;
if RadioGroup1.ItemIndex=0 then
begin
BegDate.Format:='yyyy';
endDate.Format:='yyyy';
end;
TBRafresh.Click;
end;
procedure TfrmCLShuiPiao_CX.cxTabControl1Change(Sender: TObject);
begin
initgrid();
end;
end.