D7gmYongjin/坯布仓库(GreyClothWarehouse.dll)/U_CKProductBCPKCHZList.pas

300 lines
9.3 KiB
ObjectPascal
Raw Permalink Normal View History

2026-03-04 09:51:44 +08:00
unit U_CKProductBCPKCHZList;
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, cxButtonEdit, Clipbrd, cxLookAndFeels,
cxLookAndFeelPainters, cxNavigator;
type
TfrmCKProductBCPKCHZListPB = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBExport: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
cxGridPopupMenu1: TcxGridPopupMenu;
Label3: TLabel;
C_CodeName: TEdit;
CDS_Main: TClientDataSet;
Tv1: TcxGridDBTableView;
cxGrid2Level1: TcxGridLevel;
cxGrid2: TcxGrid;
v2Column1: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
Label5: TLabel;
ConNo: TEdit;
v1Column6: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
MovePanel2: TMovePanel;
v1Column2: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
Label1: TLabel;
C_Code: TEdit;
v1Column7: TcxGridDBColumn;
CheckBox1: TCheckBox;
Label6: TLabel;
Label7: TLabel;
YWY: TEdit;
lidan: TEdit;
v1Column5: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
Label2: TLabel;
APBatchNo: TEdit;
v1Column11: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
Tv1Column1: TcxGridDBColumn;
CheckBox2: TCheckBox;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
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 C_CodeNameChange(Sender: TObject);
procedure v1Column5PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
procedure CheckBox1Click(Sender: TObject);
procedure CheckBox2Click(Sender: TObject);
private
procedure InitGrid();
{ Private declarations }
public
{ Public declarations }
end;
var
frmCKProductBCPKCHZListPB: TfrmCKProductBCPKCHZListPB;
implementation
uses
U_DataLink, U_RTFun, U_ZDYHelp, U_JYMXInfo;
{$R *.dfm}
procedure TfrmCKProductBCPKCHZListPB.FormDestroy(Sender: TObject);
begin
frmCKProductBCPKCHZListPB := nil;
end;
procedure TfrmCKProductBCPKCHZListPB.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmCKProductBCPKCHZListPB.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
{if CheckBox1.Checked=False then
begin
sql.Add('exec P_View_KuLin_HZPB @Status=''0'' ');
end
else
begin
sql.Add('exec P_View_KuLin_HZPB @Status=''1'' ');
end; }
if CheckBox1.Checked then
begin
sql.Add('select A.* ,C.C_CodeName,C.C_Code,C.C_Color,C.ZhenCun,C.MF,C.KZ,C.C_Spec,C.KaiFu');
sql.Add(' ,CM.ConNo,CM.lidan,CM.YWY');
sql.Add(',Case when isnull(JQty,0)<>0 then Cast(KCKgQty*1.00/JQty as decimal(18,2)) else Null end as pjzl');
sql.Add(' from(select Sum(KCKgQty) KCKgQty,count(*) JQty,A.MainId,A.SubId,A.KCCarNo,A.KCAPBatchNo,JT.MCCJ ');
sql.Add(' from CK_PBCP_KC KC ');
sql.Add(' inner join CK_PBCP_CR A on KC.MJID=A.MJID and A.CRFlag=''<27><><EFBFBD><EFBFBD>'' ');
sql.Add(' left join Machine JT on A.KCCarNo=JT.MCNO ');
sql.Add(' where KC.KCKGQty>0 group by A.MainId,A.SubId,A.KCCarNo,A.KCAPBatchNo,JT.MCCJ ) A');
Sql.add(' inner join Cloth_Sub C on A.MainId=C.MainId');
sql.Add(' inner join Cloth_Main CM on CM.MainId=C.MainId ');
SQL.Add(' order by JQty desc ');
end
else
begin
if CheckBox2.Checked then
begin
sql.Add('select A.*,C.C_CodeName,C.C_Code,C.C_Color,C.ZhenCun,C.MF,C.KZ,C.C_Spec,C.KaiFu');
sql.Add(' ,CM.ConNo,CM.lidan,CM.YWY');
sql.Add(',Case when isnull(JQty,0)<>0 then Cast(KCKgQty*1.00/JQty as decimal(18,2)) else Null end as pjzl');
sql.Add(' from(select Sum(KCKgQty) KCKgQty,count(*) JQty,A.MainId,A.SubId,A.KCAPBatchNo,JT.MCCJ ');
sql.Add(' from CK_PBCP_KC KC ');
sql.Add(' inner join CK_PBCP_CR A on KC.MJID=A.MJID and A.CRFlag=''<27><><EFBFBD><EFBFBD>'' ');
sql.Add(' left join Machine JT on A.KCCarNo=JT.MCNO ');
sql.Add(' where KC.KCKGQty>0 group by A.MainId,A.SubId,A.KCAPBatchNo,JT.MCCJ ) A');
Sql.add(' inner join Cloth_Sub C on A.MainId=C.MainId');
sql.Add(' inner join Cloth_Main CM on CM.MainId=C.MainId ');
SQL.Add(' order by JQty desc ');
end else
begin
sql.Add('select A.*,C.C_CodeName,C.C_Code,C.C_Color,C.ZhenCun,C.MF,C.KZ,C.C_Spec,C.KaiFu');
sql.Add(' ,CM.ConNo,CM.lidan,CM.YWY');
sql.Add(',Case when isnull(JQty,0)<>0 then Cast(KCKgQty*1.00/JQty as decimal(18,2)) else Null end as pjzl');
sql.Add(' from(select Sum(KCKgQty) KCKgQty,count(*) JQty,A.MainId,A.SubId,A.KCAPBatchNo');
sql.Add(' from CK_PBCP_KC KC ');
sql.Add(' inner join CK_PBCP_CR A on KC.MJID=A.MJID and A.CRFlag=''<27><><EFBFBD><EFBFBD>'' ');
sql.Add(' left join Machine JT on A.KCCarNo=JT.MCNO ');
sql.Add(' where KC.KCKGQty>0 group by A.MainId,A.SubId,A.KCAPBatchNo ) A');
Sql.add(' inner join Cloth_Sub C on A.MainId=C.MainId');
sql.Add(' inner join Cloth_Main CM on CM.MainId=C.MainId ');
SQL.Add(' order by JQty desc ');
end;
end;
// ShowMessage(SQL.Text);
Open;
end;
SCreateCDS20(ADOQueryMain, CDS_Main);
SInitCDSData20(ADOQueryMain, CDS_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmCKProductBCPKCHZListPB.TBRafreshClick(Sender: TObject);
begin
//BegDate.SetFocus;
MovePanel2.Visible := True;
MovePanel2.Refresh;
InitGrid();
MovePanel2.Visible := False;
end;
procedure TfrmCKProductBCPKCHZListPB.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
end;
end;
procedure TfrmCKProductBCPKCHZListPB.TBCloseClick(Sender: TObject);
begin
if Trim(DName)='ADMIN' then
begin
WriteCxGridAll(trim(self.Caption), Tv1,ADOQueryCmd,ADOQueryTemp);
end;
Close;
end;
procedure TfrmCKProductBCPKCHZListPB.FormShow(Sender: TObject);
begin
ReadCxGridAll(trim(self.Caption), Tv1);
//InitGrid();
end;
procedure TfrmCKProductBCPKCHZListPB.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
exit;
TcxGridToExcel('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>', cxGrid2);
end;
procedure TfrmCKProductBCPKCHZListPB.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 TfrmCKProductBCPKCHZListPB.C_CodeNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmCKProductBCPKCHZListPB.v1Column5PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'SOrdDefStr10';
flagname := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŵص<C5B5>';
if ShowModal = 1 then
begin
with CDS_Main do
begin
Edit;
FieldByName('SOrdDefStr10').Value := Trim(ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update JYOrder_Sub Set SOrdDefStr10=''' + Trim(ClientDataSet1.fieldbyname('ZdyName').AsString) + '''');
sql.Add(' where SubId=''' + Trim(Self.CDS_Main.fieldbyname('SubId').AsString) + '''');
ExecSQL;
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmCKProductBCPKCHZListPB.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
try
frmJYMXInfo := TfrmJYMXInfo.Create(Application);
with frmJYMXInfo do
begin
FFMainId := Trim(self.CDS_Main.fieldbyname('MainId').AsString);
// FFClothType:=Trim(self.CDS_Main.fieldbyname('ClothType').AsString);
if ShowModal = 1 then
begin
end;
end;
finally
frmJYMXInfo.Free;
end;
end;
procedure TfrmCKProductBCPKCHZListPB.CheckBox1Click(Sender: TObject);
begin
if CheckBox1.Checked then
begin
CheckBox2.Checked:=False;
end;
InitGrid();
end;
procedure TfrmCKProductBCPKCHZListPB.CheckBox2Click(Sender: TObject);
begin
if CheckBox2.Checked then
begin
CheckBox1.Checked:=False;
end;
InitGrid();
end;
end.