D7yrshuangjian/成品仓库(FinishedClothWarehouse.dll)/U_CKProductBCPKCList.pas
DESKTOP-E401PHE\Administrator 28bc8fedc3 ~
2025-09-06 16:32:36 +08:00

556 lines
16 KiB
ObjectPascal
Raw Permalink 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_CKProductBCPKCList;
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, MovePanel, cxCheckBox, Menus, cxCalendar, RM_Common, RM_Class,
RM_GridReport, RM_System, RM_Dataset, BtnEdit, Math, Clipbrd, cxPC,
cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, dxSkinBlack,
dxSkinBlue, dxSkinBlueprint, dxSkinCaramel, dxSkinCoffee, dxSkinDarkRoom,
dxSkinDarkSide, dxSkinDevExpressDarkStyle, dxSkinDevExpressStyle,
dxSkinFoggy, dxSkinGlassOceans, dxSkinHighContrast, dxSkiniMaginary,
dxSkinLilian, dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin,
dxSkinMetropolis, dxSkinMetropolisDark, dxSkinMoneyTwins,
dxSkinOffice2007Black, dxSkinOffice2007Blue, dxSkinOffice2007Green,
dxSkinOffice2007Pink, dxSkinOffice2007Silver, dxSkinOffice2010Black,
dxSkinOffice2010Blue, dxSkinOffice2010Silver, dxSkinOffice2013DarkGray,
dxSkinOffice2013LightGray, dxSkinOffice2013White, dxSkinPumpkin,
dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus,
dxSkinSilver, dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008,
dxSkinTheAsphaltWorld, dxSkinsDefaultPainters, dxSkinValentine,
dxSkinVS2010, dxSkinWhiteprint, dxSkinXmas2008Blue, dxSkinscxPCPainter,
cxNavigator, dxBarBuiltInMenu;
type
TfrmCKProductBCPKCList = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBExport: TToolButton;
TBClose: TToolButton;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
cxGridPopupMenu1: TcxGridPopupMenu;
CDS_Main: TClientDataSet;
Tv1: TcxGridDBTableView;
cxGrid2Level1: TcxGridLevel;
cxGrid2: TcxGrid;
cxgrdMPRTCodeName: TcxGridDBColumn;
cxgrdPRTColor: TcxGridDBColumn;
cxgrdKGQty: TcxGridDBColumn;
cxgrdQty: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
cxgrdQtyUnit: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
cxgrdMPRTMF: TcxGridDBColumn;
cxgrdMPRTKZ: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
cxgrdMPRTSpec: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
MovePanel2: TMovePanel;
v1Column11: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
ThreeColorBase: TcxStyleRepository;
SHuangSe: TcxStyle;
SkyBlue: TcxStyle;
Default: TcxStyle;
QHuangSe: TcxStyle;
Red: TcxStyle;
FontBlue: TcxStyle;
TextSHuangSe: TcxStyle;
FonePurple: TcxStyle;
FoneClMaroon: TcxStyle;
FoneRed: TcxStyle;
RowColor: TcxStyle;
handBlack: TcxStyle;
cxBlue: TcxStyle;
RMDB_Main: TRMDBDataSet;
ADOQueryPrint: TADOQuery;
RM2: TRMGridReport;
v1Column16: TcxGridDBColumn;
CDS_HZ: TClientDataSet;
CDS_PRT: TClientDataSet;
RM3: TRMGridReport;
RMDBHZ: TRMDBDataSet;
RMDBPRT: TRMDBDataSet;
Panel6: TPanel;
Label31: TLabel;
LBCPAP: TLabel;
BTLP: TButton;
BTNP: TButton;
TCBNOR: TComboBox;
cxgrdNETKGQty: TcxGridDBColumn;
Panel1: TPanel;
lblMPRTCodeName: TLabel;
Label1: TLabel;
Label2: TLabel;
lblorderNo: TLabel;
lblMJID: TLabel;
lblMPRTKZ: TLabel;
lblMPRTMF: TLabel;
lblCPType: TLabel;
lblPRTColor: TLabel;
lblMPRTSpec: TLabel;
lblRKplace: TLabel;
MPRTCodeName: TEdit;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
orderNo: TEdit;
MJID: TEdit;
MPRTKZ: TEdit;
MPRTMF: TEdit;
CPType: TComboBox;
RKplace: TEdit;
PRTColor: TEdit;
v1Column5: TcxGridDBColumn;
MPRTSpec: TEdit;
v1Column10: TcxGridDBColumn;
lblConNo: TLabel;
ConNo: TEdit;
lblRKOrdID: TLabel;
RKOrdID: TEdit;
lblKuangHao: TLabel;
KuangHao: TEdit;
v1Column13: TcxGridDBColumn;
cxgrdCustomerNoName: TcxGridDBColumn;
Label14: TLabel;
CustomerNoName: TEdit;
cxTabControl1: TcxTabControl;
N3: TMenuItem;
cxgrdJQty: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
Tv1Column1: TcxGridDBColumn;
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 Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure BTNPClick(Sender: TObject);
procedure BTLPClick(Sender: TObject);
procedure TCBNORChange(Sender: TObject);
procedure MPRTCodeNameKeyPress(Sender: TObject; var Key: Char);
procedure CPTypeKeyPress(Sender: TObject; var Key: Char);
procedure cxTabControl1Change(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
private
FLeft, FTop: Integer;
CurrentPage, RecordsNumber: Integer;
procedure InitGrid();
procedure SetStatus();
{ Private declarations }
public
issel: integer;
{ Public declarations }
end;
var
frmCKProductBCPKCList: TfrmCKProductBCPKCList;
implementation
uses
U_DataLink, U_Fun, U_ZDYHelp;
{$R *.dfm}
procedure TfrmCKProductBCPKCList.SetStatus();
var
i: Integer;
begin
lblorderNo.Visible := True;
orderNo.Visible := True;
lblMPRTCodeName.Visible := True;
MPRTCodeName.Visible := True;
lblMPRTSpec.Visible := True;
MPRTSpec.Visible := True;
lblMPRTMF.Visible := True;
MPRTMF.Visible := True;
lblMPRTKZ.Visible := True;
MPRTKZ.Visible := True;
lblPRTColor.Visible := True;
PRTColor.Visible := True;
lblCPType.Visible := True;
CPType.Visible := True;
lblConNo.Visible := True;
ConNo.Visible := True;
lblRKOrdID.Visible := True;
RKOrdID.Visible := True;
lblRKplace.Visible := True;
RKplace.Visible := True;
lblKuangHao.Visible := True;
KuangHao.Visible := True;
lblMJID.Visible := True;
MJID.Visible := True;
case cxTabControl1.TabIndex of
0:
begin
Panel6.Visible := False;
for i := 0 to tv1.ColumnCount - 1 do
begin
tv1.Columns[i].Visible := false;
end;
cxgrdJQty.Visible := True;
cxgrdCustomerNoName.Visible := True;
cxgrdKGQty.Visible := True;
cxgrdNETKGQty.Visible := True;
cxgrdQty.Visible := True;
cxgrdQtyUnit.Visible := True;
lblorderNo.Visible := False;
orderNo.Text := '';
orderNo.Visible := False;
lblMPRTCodeName.Visible := False;
MPRTCodeName.Text := '';
MPRTCodeName.Visible := False;
lblMPRTSpec.Visible := False;
MPRTSpec.Text := '';
MPRTSpec.Visible := False;
lblMPRTMF.Visible := False;
MPRTMF.Text := '';
MPRTMF.Visible := False;
lblMPRTKZ.Visible := False;
MPRTKZ.Text := '';
MPRTKZ.Visible := False;
lblPRTColor.Visible := False;
PRTColor.Text := '';
PRTColor.Visible := False;
lblCPType.Visible := False;
CPType.Text := '';
CPType.Visible := False;
lblConNo.Visible := False;
ConNo.Text := '';
ConNo.Visible := False;
lblRKOrdID.Visible := False;
RKOrdID.Text := '';
RKOrdID.Visible := False;
lblRKplace.Visible := False;
RKplace.Text := '';
RKplace.Visible := False;
lblKuangHao.Visible := False;
KuangHao.Text := '';
KuangHao.Visible := False;
lblMJID.Visible := False;
MJID.Text := '';
MJID.Visible := False;
end;
1:
begin
Panel6.Visible := False;
for i := 0 to tv1.ColumnCount - 1 do
begin
tv1.Columns[i].Visible := false;
end;
cxgrdJQty.Visible := True;
cxgrdCustomerNoName.Visible := True;
cxgrdKGQty.Visible := True;
cxgrdNETKGQty.Visible := True;
cxgrdQty.Visible := True;
cxgrdQtyUnit.Visible := True;
cxgrdMPRTCodeName.Visible := True;
cxgrdMPRTSpec.Visible := True;
cxgrdMPRTMF.Visible := True;
cxgrdMPRTKZ.Visible := True;
cxgrdPRTColor.Visible := True;
lblCPType.Visible := False;
CPType.Text := '';
CPType.Visible := False;
lblConNo.Visible := False;
ConNo.Text := '';
ConNo.Visible := False;
lblRKOrdID.Visible := False;
RKOrdID.Text := '';
RKOrdID.Visible := False;
lblRKplace.Visible := False;
RKplace.Text := '';
RKplace.Visible := False;
lblKuangHao.Visible := False;
KuangHao.Text := '';
KuangHao.Visible := False;
lblMJID.Visible := False;
MJID.Text := '';
MJID.Visible := False;
end;
2:
begin
for i := 0 to tv1.ColumnCount - 1 do
begin
tv1.Columns[i].Visible := True;
end;
cxgrdJQty.Visible := false;
Panel6.Visible := True;
end;
end;
end;
procedure TfrmCKProductBCPKCList.FormDestroy(Sender: TObject);
begin
frmCKProductBCPKCList := nil;
end;
procedure TfrmCKProductBCPKCList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmCKProductBCPKCList.FormCreate(Sender: TObject);
begin
BegDate.DateTime := SGetServerDateTime(ADOQueryTemp);
EndDate.DateTime := SGetServerDateTime(ADOQueryTemp)
end;
procedure TfrmCKProductBCPKCList.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 + ' where ' + trim(Pwhere);
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
case cxTabControl1.TabIndex of
0:
begin
sql.Add('select * from ( ');
sql.Add('select SUM(A.KGQty) KGQty,SUM(A.Qty) Qty,SUM(A.NetKGQty) NETKGQty,count(A.MJID) JQty,A.QtyUnit ');
sql.Add(',B.CustomerNoName');
sql.Add('from CK_BanCP_CR A inner join CK_BanCP_KC D on A.MJID=D.MJID inner join JYOrder_Main B on A.MainId=B.MainId ');
sql.Add('inner join JYOrder_Sub C on A.SubId=C.SubId where A.CRFlag=''<27><><EFBFBD><EFBFBD>'' and D.KCValid=''Y'' ');
sql.Add(' group by B.CustomerNoName,A.QtyUnit');
sql.Add(' ) AA ' + fwhere);
end;
1:
begin
sql.Add('select * from ( ');
sql.Add('select SUM(A.KGQty) KGQty,SUM(A.Qty) Qty,SUM(A.NetKGQty) NetKGQty,count(A.MJID) JQty,A.QtyUnit,A.ganghao ');
sql.Add(' ,B.CustomerNoName,B.ConNo,B.OrderNo,B.MPRTCode,B.MPRTCodeName,B.MPRTMF,B.MPRTKZ ,B.MPRTSpec,C.PRTColor ');
sql.Add('from CK_BanCP_CR A inner join CK_BanCP_KC D on A.MJID=D.MJID inner join JYOrder_Main B on A.MainId=B.MainId ');
sql.Add('inner join JYOrder_Sub C on A.SubId=C.SubId where A.CRFlag=''<27><><EFBFBD><EFBFBD>'' and D.KCValid=''Y'' ');
sql.Add(' group by B.CustomerNoName,A.QtyUnit,A.ganghao,B.ConNo,B.OrderNo,B.MPRTCode,B.MPRTCodeName,B.MPRTMF,B.MPRTKZ ,B.MPRTSpec ,C.PRTColor ');
sql.Add(' ) AA ' + fwhere);
end;
2:
begin
sql.Add('exec P_Page_FinishClothKC ');
sql.Add('@pageIndex=' + inttostr(CurrentPage));
sql.Add(',@pageSize=' + inttostr(RecordsNumber));
sql.Add(',@criteria= ' + quotedstr(fwhere));
end;
end;
// ShowMessage(SQL.Text);
Open;
end;
SCreateCDS20(ADOQueryMain, CDS_Main);
SInitCDSData20(ADOQueryMain, CDS_Main);
if cxTabControl1.TabIndex = 2 then
LBCPAP.Caption := inttostr(CurrentPage) + '/' + inttostr(ceil(CDS_Main.FieldByName('TotalCount').AsInteger / RecordsNumber));
MovePanel2.Visible := false;
finally
ADOQueryMain.EnableControls;
MovePanel2.Visible := false;
end;
end;
procedure TfrmCKProductBCPKCList.TBRafreshClick(Sender: TObject);
begin
CurrentPage := 1;
SetStatus();
InitGrid();
end;
procedure TfrmCKProductBCPKCList.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
end;
end;
procedure TfrmCKProductBCPKCList.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(trim(self.Caption) + trim(IntToStr(cxTabControl1.TabIndex)), Tv1, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
Close;
end;
procedure TfrmCKProductBCPKCList.FormShow(Sender: TObject);
begin
CurrentPage := 1;
RecordsNumber := 500;
ReadCxGrid(trim(self.Caption) + trim(IntToStr(cxTabControl1.TabIndex)), Tv1, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
SetStatus();
end;
procedure TfrmCKProductBCPKCList.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
exit;
TcxGridToExcel('<27><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>', cxGrid2);
end;
procedure TfrmCKProductBCPKCList.Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
FLeft := X;
FTop := Y;
end;
procedure TfrmCKProductBCPKCList.N1Click(Sender: TObject);
begin
SelOKNo(CDS_Main, True);
end;
procedure TfrmCKProductBCPKCList.N2Click(Sender: TObject);
begin
SelOKNo(CDS_Main, False);
end;
procedure TfrmCKProductBCPKCList.BTNPClick(Sender: TObject);
begin
if CurrentPage < CDS_Main.FieldByName('TotalCount').AsInteger / RecordsNumber then
CurrentPage := CurrentPage + 1;
InitGrid();
end;
procedure TfrmCKProductBCPKCList.BTLPClick(Sender: TObject);
begin
if CurrentPage > 1 then
CurrentPage := CurrentPage - 1;
InitGrid();
end;
procedure TfrmCKProductBCPKCList.TCBNORChange(Sender: TObject);
begin
RecordsNumber := StrToInt(TCBNOR.Text);
CurrentPage := 1;
InitGrid();
end;
procedure TfrmCKProductBCPKCList.MPRTCodeNameKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
CurrentPage := 1;
InitGrid();
end;
end;
procedure TfrmCKProductBCPKCList.CPTypeKeyPress(Sender: TObject; var Key: Char);
begin
CurrentPage := 1;
InitGrid();
end;
procedure TfrmCKProductBCPKCList.cxTabControl1Change(Sender: TObject);
begin
case cxTabControl1.TabIndex of
0:
begin
CustomerNoName.Text := '';
end;
1:
begin
orderNo.Text := '';
MPRTCodeName.Text := '';
MPRTSpec.Text := '';
MPRTMF.Text := '';
MPRTKZ.Text := '';
PRTColor.Text := '';
end;
2:
begin
end;
end;
SetStatus();
InitGrid();
end;
procedure TfrmCKProductBCPKCList.N3Click(Sender: TObject);
begin
Clipboard.SetTextBuf(PChar(Trim(CDS_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString)));
end;
procedure TfrmCKProductBCPKCList.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
var
Tabint: integer;
begin
Tabint := cxTabControl1.TabIndex;
case Tabint of
0:
begin
CustomerNoName.Text := CDS_Main.FieldByName('CustomerNoName').AsString;
cxTabControl1.TabIndex := 1;
end;
1:
begin
MPRTCodeName.Text := CDS_Main.FieldByName('MPRTCodeName').AsString;
MPRTSpec.Text := CDS_Main.FieldByName('MPRTSpec').AsString;
MPRTMF.Text := CDS_Main.FieldByName('MPRTMF').AsString;
MPRTKZ.Text := CDS_Main.FieldByName('MPRTKZ').AsString;
PRTColor.Text := CDS_Main.FieldByName('PRTColor').AsString;
cxTabControl1.TabIndex := 2;
end;
end;
end;
end.