D7szChenfeng/经轴仓库(Warehouse.dll)/U_ClothSCHZListSel.pas
DESKTOP-E401PHE\Administrator ccdaa90a0f 移交
2025-07-22 15:51:47 +08:00

419 lines
12 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_ClothSCHZListSel;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB,
cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses,
cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter,
RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport,
cxTextEdit, cxCheckBox, cxPC, cxContainer, cxMaskEdit;
type
TfrmClothSCHZListSel = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
Label1: TLabel;
Label2: TLabel;
cxGridPopupMenu1: TcxGridPopupMenu;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
Label3: TLabel;
ConNo: TEdit;
Label5: TLabel;
C_CodeName: TEdit;
Order_Main: TClientDataSet;
Label10: TLabel;
C_Code: TEdit;
Panel2: TPanel;
cxGrid3: TcxGrid;
TvPBMX: TcxGridDBTableView;
cxGridDBColumn3: TcxGridDBColumn;
cxGridDBColumn43: TcxGridDBColumn;
cxGridDBColumn44: TcxGridDBColumn;
cxGridDBColumn45: TcxGridDBColumn;
cxGridDBColumn46: TcxGridDBColumn;
cxGridDBColumn47: TcxGridDBColumn;
cxGridDBColumn51: TcxGridDBColumn;
cxGridLevel5: TcxGridLevel;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1OrderNo: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column21: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1Column19: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
CDS_YuanLiao: TClientDataSet;
DataSource2: TDataSource;
CDS_PBMX: TClientDataSet;
DataSourcePBMX: TDataSource;
ADOQuery1: TADOQuery;
vPBMXColumn1: TcxGridDBColumn;
ToolButton2: TToolButton;
vPBMXColumn2: TcxGridDBColumn;
vPBMXColumn3: TcxGridDBColumn;
cxGridPopupMenu2: TcxGridPopupMenu;
cxGridPopupMenu3: TcxGridPopupMenu;
vPBMXColumn4: TcxGridDBColumn;
vPBMXColumn5: TcxGridDBColumn;
ScrollBox1: TScrollBox;
Label4: TLabel;
Label6: TLabel;
Label7: TLabel;
Label11: TLabel;
Label9: TLabel;
Label14: TLabel;
Label15: TLabel;
Label18: TLabel;
Label19: TLabel;
Label21: TLabel;
Label22: TLabel;
Label8: TLabel;
Label12: TLabel;
Label13: TLabel;
Label16: TLabel;
Label17: TLabel;
Label20: TLabel;
Label23: TLabel;
Label24: TLabel;
Label26: TLabel;
Label27: TLabel;
Label28: TLabel;
Label25: TLabel;
Label29: TLabel;
Label30: TLabel;
Label31: TLabel;
Label32: TLabel;
Label33: TLabel;
Label34: TLabel;
Label39: TLabel;
Label49: TLabel;
Label35: TLabel;
Label36: TLabel;
Label51: TLabel;
Label53: TLabel;
Label50: TLabel;
Label52: TLabel;
Label54: TLabel;
Label55: TLabel;
Label56: TLabel;
Label57: TLabel;
Label58: TLabel;
Label59: TLabel;
ConNo1: TEdit;
QDTime: TDateTimePicker;
C_CodeName1: TcxButtonEdit;
KZQty: TEdit;
CarType: TcxButtonEdit;
MFQty: TEdit;
CompanyName: TcxButtonEdit;
ZhuanQty: TEdit;
DayQty: TEdit;
DeliveryDate: TDateTimePicker;
C_Color: TEdit;
PiKgQty: TEdit;
PiQty: TEdit;
C_Qty: TEdit;
C_Code1: TEdit;
PiZhong: TEdit;
ZhenCun: TcxButtonEdit;
ZongZhenQty: TEdit;
ChouZhen: TcxButtonEdit;
PiKgQtyFD: TEdit;
C_Spec: TEdit;
GZGSType: TComboBox;
ShaChang: TEdit;
C_Note: TRichEdit;
TaiTouFlag: TComboBox;
C_HX: TEdit;
KZ: TEdit;
MF: TEdit;
SJCarNO: TEdit;
HuaGao: TEdit;
HuaKuan: TEdit;
BuJia: TEdit;
ChiLun: TEdit;
ZhuanSu: TEdit;
ZhenTongGD: TEdit;
LuShu: TEdit;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
v2Column3: TcxGridDBColumn;
v2YCLName: TcxGridDBColumn;
v2Column10: TcxGridDBColumn;
v2YCLSpec: TcxGridDBColumn;
v2PinPai: TcxGridDBColumn;
v2GYSName: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
cxGridDBColumn2: TcxGridDBColumn;
v2Column2: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v2Column4: TcxGridDBColumn;
v2Column11: TcxGridDBColumn;
cxGridDBColumn6: TcxGridDBColumn;
v2Column9: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v2Column7: TcxGridDBColumn;
v2Column8: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
v2Column12: TcxGridDBColumn;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure ConNoChange(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure conPress(Sender: TObject; var Key: Char);
procedure FormDestroy(Sender: TObject);
procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure ToolButton2Click(Sender: TObject);
procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
procedure Tv1DblClick(Sender: TObject);
private
FInt,PFInt:Integer;
canshu1:string;
procedure InitGrid();
procedure InitForm();
procedure InitRZData();
{ Private declarations }
public
RZConNO:String;
{ Public declarations }
end;
var
frmClothSCHZListSel: TfrmClothSCHZListSel;
implementation
uses
U_DataLink,U_RTFun,U_ZDYHelp;
{$R *.dfm}
procedure TfrmClothSCHZListSel.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmClothSCHZListSel.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƻ<EFBFBD><C6BB><EFBFBD>ZSel',Tv1,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmClothSCHZListSel.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
sql.Add('select * ');
sql.Add('from Cloth_Main A inner join CLoth_Sub B on A.Mainid=B.MainId where '); //A.YLOK=1
sql.Add(' EndFlag=0 ');
if Trim(RZConNO)<>'' then
begin
sql.Add(' and isnull(A.ConNo,'''')='''+Trim(RZConNO)+'''');
end else
begin
sql.Add(' and A.QDTime>='''+Trim(FormatDateTime('yyyy-MM-dd',BegDate.DateTime))+'''');
sql.Add(' and A.QDTime<'''+Trim(FormatDateTime('yyyy-MM-dd',EndDate.DateTime+1))+'''');
end;
sql.Add(' order by QDTime desc ');
Open;
end;
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
finally
ADOQueryMain.EnableControls;
end;
{if Trim(RZConNO)<>'' then
begin
InitRZData();
end;}
end;
procedure TfrmClothSCHZListSel.InitForm();
begin
ReadCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƻ<EFBFBD><C6BB><EFBFBD>ZSel',Tv1,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
BegDate.DateTime:=SGetServerDate10(ADOQueryTemp)-45;
EndDate.DateTime:=SGetServerDate10(ADOQueryTemp);
InitGrid();
{ if Trim(RZConNO)<>'' then
begin
ToolButton2.Visible:=False;
end; }
end;
procedure TfrmClothSCHZListSel.TBFindClick(Sender: TObject);
begin
if ADOQueryMain.Active=False then Exit;
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
end;
procedure TfrmClothSCHZListSel.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmClothSCHZListSel.ConNoChange(Sender: TObject);
begin
if ADOQueryMain.Active=False then Exit;
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
end;
procedure TfrmClothSCHZListSel.FormShow(Sender: TObject);
begin
InitForm();
end;
procedure TfrmClothSCHZListSel.conPress(Sender: TObject;
var Key: Char);
begin
if Key=#13 then
begin
if Length(Trim(ConNo.Text))<4 then Exit;
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
sql.Add('select * from Cloth_Main A inner join CLoth_Sub B on A.Mainid=B.MainId');
sql.Add(' where A.ConNo like '''+'%'+Trim(ConNo.Text)+'%'+'''');
sql.Add(' and A.YLOK=1 and EndFlag=0');
Open;
end;
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
end;
procedure TfrmClothSCHZListSel.FormDestroy(Sender: TObject);
begin
frmClothSCHZListSel:=nil;
end;
procedure TfrmClothSCHZListSel.Tv1MouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
// InitRZData();
end;
procedure TfrmClothSCHZListSel.InitRZData();
begin
with ADOQuery1 do
begin
Close;
SQL.Clear;
sql.Add(' exec Cloth_QryList :MainId,:WSql');
if Order_Main.IsEmpty=False then
begin
ADOQuery1.Parameters.ParamByName('MainId').Value:=Trim(Order_Main.fieldbyname('MainId').AsString);
ADOQuery1.Parameters.ParamByName('WSql').Value:=' ';
end else
begin
ADOQuery1.Parameters.ParamByName('MainId').Value:='';
ADOQuery1.Parameters.ParamByName('WSql').Value:=' and 1<>1 ';
end;
Open;
end;
SCSHData(ADOQuery1,ScrollBox1,0);
SCSHData(ADOQuery1,ScrollBox1,2);
ConNo1.Text:=Trim(ADOQuery1.fieldbyname('ConNo').AsString);
C_CodeName1.Text:=Trim(ADOQuery1.fieldbyname('C_CodeName').AsString);
C_Code1.Text:=Trim(ADOQuery1.fieldbyname('C_Code').AsString);
with ADOQuery1 do
begin
Close;
sql.Clear;
sql.Add('select A.* ');
sql.Add(',YLQty=Cast(C_Qty*PBQty*0.01*(1+isnull(ZPSH,0)*0.01) as decimal(18,1))');
sql.Add(',SQQty=(select sum(SQQty) from CaiGou_SQ SQ where SQ.ConNo=C.ConNo and SQ.SPName=A.YCLName ');
sql.Add(' and SQ.Valid=''Y'' and isnull(SQ.ConNo,'''')<>'''')');
sql.Add(',DHQty=(select sum(Qty) from CK_SXPB_CR SQ where SQ.PBNO=C.ConNo and SQ.SPName=A.YCLName ');
sql.Add(' and isnull(SQ.PBNO,'''')<>'''' and ZFFlag=0 and CKName='<><C9B4>'' and CRFlag=''<27><><EFBFBD><EFBFBD>'')');
sql.Add(',CKQty=(select sum(Qty) from CK_SXPB_CR SQ where SQ.PBNO=C.ConNo and SQ.SPName=A.YCLName ');
sql.Add(' and isnull(SQ.PBNO,'''')<>'''' and ZFFlag=0 and CKName='<><C9B4>'' and CRFlag=''<27><><EFBFBD><EFBFBD>'')');
sql.Add(' from Cloth_YCL_PB A ');
sql.Add(' inner join Cloth_Sub B on A.SubId=B.SubId');
sql.Add(' where A.MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+'''');
Open;
end;
SCreateCDS20(ADOQuery1,CDS_YuanLiao);
SInitCDSData20(ADOQuery1,CDS_YuanLiao);
end;
procedure TfrmClothSCHZListSel.Tv2MouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select MX.* ');
sql.Add(',YLQty10=Cast(C_Qty*A.PBQty*0.01*(1+isnull(ZPSH,0)*0.01)*MX.PBQty*0.01*(1+isnull(WLSH,0)*0.01) as decimal(18,1))');
sql.Add(' from Cloth_YCL_PB A');
sql.Add(' inner join Cloth_Sub B on A.SubId=B.SubId');
sql.Add(' inner join Cloth_YCL_PB_MX MX on A.PBID=MX.PBID');
SQL.Add(' where MX.PBID='''+Trim(CDS_YuanLiao.fieldbyname('PBID').AsString)+'''');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_PBMX);
SInitCDSData20(ADOQueryTemp,CDS_PBMX);
end;
procedure TfrmClothSCHZListSel.ToolButton2Click(Sender: TObject);
begin
{if (CDS_YuanLiao.Locate('SSel',True,[])=False) and (CDS_PBMX.Locate('SSel',True,[])=False) then
begin
Application.MessageBox('û<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end; }
if Order_Main.IsEmpty then Exit;
ModalResult:=1;
end;
procedure TfrmClothSCHZListSel.Tv1CustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
begin
{ IF AViewInfo.GridRecord.Values[tv1.GetColumnByFieldName('JHDFlag').Index]=True then
ACanvas.Brush.Color:=clSkyBlue; }
end;
procedure TfrmClothSCHZListSel.Tv1DblClick(Sender: TObject);
begin
if Order_Main.IsEmpty then Exit;
ModalResult:=1;
end;
end.