D7gmYushang/成品仓库(FinishedClothWarehouse.dll)/U_CKProductBCPOutListHZ.pas
DESKTOP-E401PHE\Administrator 1d94a89439 0
2025-09-24 13:13:14 +08:00

301 lines
9.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_CKProductBCPOutListHZ;
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, RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System,
RM_GridReport, cxCheckBox, Menus, MovePanel, RM_E_llPDF, cxCalendar, Math,
Clipbrd, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator;
type
TfrmCKProductBCPOutListHZ = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBExport: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
Label3: TLabel;
Label4: TLabel;
MPRTCode: TEdit;
Label2: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
CDS_Main: TClientDataSet;
Tv1: TcxGridDBTableView;
cxGrid2Level1: TcxGridLevel;
cxGrid2: TcxGrid;
v2Column1: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
Label5: TLabel;
orderNo: TEdit;
v1Column7: TcxGridDBColumn;
RMXLSExport1: TRMXLSExport;
v1Column4: TcxGridDBColumn;
Label10: TLabel;
CkOrdNo: TEdit;
v1Column10: TcxGridDBColumn;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
MovePanel2: TMovePanel;
DS_JuanPRT: TDataSource;
cxGridPopupMenu2: TcxGridPopupMenu;
Label11: TLabel;
v1Column15: TcxGridDBColumn;
Label17: TLabel;
apid: TEdit;
v1Column21: TcxGridDBColumn;
begtime: TDateTimePicker;
endTime: TDateTimePicker;
ADOQueryPrint: TADOQuery;
RMDB_Main: TRMDBDataSet;
RMDBHZ: TRMDBDataSet;
CDS_HZ: TClientDataSet;
RM3: TRMGridReport;
v1Column24: TcxGridDBColumn;
RMDBPRT: TRMDBDataSet;
CDS_PRT: TClientDataSet;
Label22: TLabel;
CustomerNOName: TEdit;
Label24: TLabel;
PRTColor: TEdit;
C_GANGNO: TEdit;
v1Column13: TcxGridDBColumn;
CRType: TComboBox;
Label7: TLabel;
ywy: TEdit;
v1Column5: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
Tv1Column1: TcxGridDBColumn;
ISCRTime: TCheckBox;
Tv1Column2: TcxGridDBColumn;
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 N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure orderNoKeyPress(Sender: TObject; var Key: Char);
procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
procedure Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure CPTypeChange(Sender: TObject);
procedure CRTypeChange(Sender: TObject);
procedure edtSMNOKeyPress(Sender: TObject; var Key: Char);
procedure FormDestroy(Sender: TObject);
procedure ISCRTimeClick(Sender: TObject);
private
FLeft, FTop: Integer;
CurrentPage, RecordsNumber: Integer;
procedure InitGrid();
{ Private declarations }
public
canshu1: string;
{ Public declarations }
end;
var
frmCKProductBCPOutListHZ: TfrmCKProductBCPOutListHZ;
implementation
uses
U_DataLink, U_Fun, U_SysLogHelp;
{$R *.dfm}
procedure TfrmCKProductBCPOutListHZ.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmCKProductBCPOutListHZ.FormCreate(Sender: TObject);
begin
EndDate.DateTime := SGetServerDateTime(ADOQueryTemp);
BegDate.DateTime := EndDate.DateTime - 20;
end;
procedure TfrmCKProductBCPOutListHZ.InitGrid();
var
fwhere, Pwhere: string;
begin
MovePanel2.Left := (self.Width - MovePanel2.Width) div 2;
MovePanel2.Visible := True;
MovePanel2.Refresh;
Pwhere := SGetFilters(Panel1, 1, 2);
if trim(Pwhere) <> '' then
fwhere := fwhere + ' and ' + trim(Pwhere);
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
sql.Clear;
// sql.Add(' select AAA.* from ( ');
// sql.Add(' select AA.* ');
// sql.Add(' ,B.orderNo,B.MPRTCodeName,B.MPRTCode,B.MPRTMF,B.MPRTKZ,B.conNo,B.KHconNo,B.lidan,B.ywy ');
// sql.Add(' ,C.PRTColor,C.PRTEColor,D.CustomerNOName,D.CRTYPE');
//
// sql.Add(' from ( ');
// sql.Add(' select count(A.MJID) PS,SUM(A.NETKGQty) NETKGQty,SUM(A.KGQty) KGQty, SUM(A.Qty) Qty,A.CKOrdNo,A.MainId,A.SubId,A.QtyUnit,A.APID ,A.ganghao,A.kuanhao ');
// SQL.Add(',CKDATE=convert(varchar(10),CRTIME,120)');
// sql.Add(' from CK_BanCP_CR A ');
// sql.Add(' where a.CRFlag=''<27><><EFBFBD><EFBFBD>'' ');
// sql.Add(' and convert(varchar(10),CRTIME,120)>=' + quotedstr(FormatDateTime('yyyy-MM-dd', BegDate.DateTime)));
// sql.Add(' and convert(varchar(10),CRTIME,120)<' + quotedstr(FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1))); //D.KHNmae,D.CKDate,D.CKType
// sql.Add(' GROUP BY A.CKOrdNo,A.MainId,A.SubId,A.QtyUnit,A.kuanhao ,A.ganghao,convert(varchar(10),CRTIME,120) ,A.APID ) AA ');
// sql.Add(' left join JYOrder_Main B on AA.MainId=B.MainId inner join JYOrder_Sub C on AA.SubId=C.SubId left join FHSQ_Main D ON AA.CKOrdNo=D.FSID ');
// sql.Add(' ) AAA ');
sql.Add('select count(mjid)ps,SUM(NETKGQty) NETKGQty,SUM(KGQty) KGQty, SUM(Qty) Qty ,CKDate');
SQL.Add(',WLCODE=(SELECT WLCODE FROM JYORDER_SUB g where g.subid=(select ORDSubIdCK from ck_sxpb_cr h where h.spid=aa.apid ))');
sql.Add(',orderNo,MPRTCode,YWY,PRTColor,CustomerNOName,CRTYPE,CKOrdNo,C_GANGNO,C_KUWEI,APID,QTYUNIT from (');
sql.Add('select convert(varchar(10),CRTIME,120)CKDate,a.CKOrdNo,b.mjid,C_GANGNO ,C_KUWEI,QTYUNIT');
sql.Add(',ISNULL(C_ORDERNO,C.orderNo)orderNo,ISNULL(C_CODE,MPRTCode)MPRTCode,ISNULL(C_YWY,C.ywy)YWY,C_COLOR AS PRTColor,ISNULL(e.CustomerNoName,');
sql.Add('C_KHNAME)CustomerNOName,A.CRTYPE,NETKGQty,KGQty,Qty,a.APID from CK_BanCP_CR A');
sql.Add('inner join CK_BanCP_KC B ON A.MJID=B.MJID LEFT JOIN JYOrder_Main C ON A.MAINID= C.MAINID');
sql.Add('left join FHSQ_Sub D ON D.MJID=A.MJID and d.fsid=a.CKOrdNo left join FHSQ_Main e on e.fsid=d.fsid');
sql.Add('where CRFlag=''<27><><EFBFBD><EFBFBD>'' and e.SQType<>''<27><><EFBFBD><EFBFBD>''');
if ISCRTime.Checked = True then
begin
sql.Add(' and convert(varchar(10),CRTIME,120)>=' + quotedstr(FormatDateTime('yyyy-MM-dd', BegDate.DateTime)));
sql.Add(' and convert(varchar(10),CRTIME,120)<' + quotedstr(FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1)));
end;
sql.Add(') aa where 1=1');
sql.Add(fwhere);
sql.Add('group by orderNo,MPRTCode,YWY,PRTColor,CustomerNOName,CRTYPE,CKOrdNo,C_GANGNO,QTYUNIT,CKDate,C_KUWEI,APID');
// SQL.Add('ORDER BY CKDate DESC');
// ShowMessage(sql.Text);
Open;
end;
SCreateCDS20(ADOQueryMain, CDS_Main);
SInitCDSData20(ADOQueryMain, CDS_Main);
MovePanel2.Visible := false;
finally
ADOQueryMain.EnableControls;
MovePanel2.Visible := false;
end;
end;
procedure TfrmCKProductBCPOutListHZ.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmCKProductBCPOutListHZ.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
end;
end;
procedure TfrmCKProductBCPOutListHZ.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(trim(self.Caption), Tv1, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
Close;
end;
procedure TfrmCKProductBCPOutListHZ.FormShow(Sender: TObject);
var
fsj: string;
begin
// ReadCxGrid(trim(self.Caption), Tv1, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
fsj := ' select distinct (crtype) name from CK_BanCP_CR where crflag=''<27><><EFBFBD><EFBFBD>'' AND crtype<>''<27><>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>'' ORDER BY crtype';
SInitComBoxBySql(ADOQueryCmd, CRType, False, fsj);
end;
procedure TfrmCKProductBCPOutListHZ.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
exit;
SelExportData(Tv1, ADOQueryMain, '');
end;
procedure TfrmCKProductBCPOutListHZ.N1Click(Sender: TObject);
begin
SelOKNo(CDS_Main, True);
end;
procedure TfrmCKProductBCPOutListHZ.N2Click(Sender: TObject);
begin
SelOKNo(CDS_Main, False);
end;
procedure TfrmCKProductBCPOutListHZ.orderNoKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
CurrentPage := 1;
InitGrid();
end;
end;
procedure TfrmCKProductBCPOutListHZ.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
Clipboard.SetTextBuf(PChar(Trim(CDS_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString)));
end;
procedure TfrmCKProductBCPOutListHZ.Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
FLeft := X;
FTop := Y;
end;
procedure TfrmCKProductBCPOutListHZ.CPTypeChange(Sender: TObject);
begin
CurrentPage := 1;
InitGrid();
end;
procedure TfrmCKProductBCPOutListHZ.CRTypeChange(Sender: TObject);
begin
CurrentPage := 1;
InitGrid();
end;
procedure TfrmCKProductBCPOutListHZ.edtSMNOKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
end;
end;
procedure TfrmCKProductBCPOutListHZ.FormDestroy(Sender: TObject);
begin
frmCKProductBCPOutListHZ := nil;
end;
procedure TfrmCKProductBCPOutListHZ.ISCRTimeClick(Sender: TObject);
begin
InitGrid();
end;
end.