D7szChenfeng/成品仓库(FinishedClothWarehouse.dll)/U_SQKCHZSelList2.pas

211 lines
6.3 KiB
ObjectPascal
Raw Normal View History

2025-07-22 15:51:47 +08:00
unit U_SQKCHZSelList2;
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, cxCheckBox, cxLookAndFeels,
cxLookAndFeelPainters, cxNavigator, dxSkinsCore, dxSkinsDefaultPainters,
dxSkinscxPCPainter, 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, dxSkinValentine, dxSkinVS2010, dxSkinWhiteprint,
dxSkinXmas2008Blue;
type
TfrmSQKCHZSelList2 = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBClose: TToolButton;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
cxGridPopupMenu1: TcxGridPopupMenu;
CDS_Main: TClientDataSet;
Tv1: TcxGridDBTableView;
cxGrid2Level1: TcxGridLevel;
cxGrid2: TcxGrid;
v2Column1: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
MovePanel2: TMovePanel;
v1Column7: TcxGridDBColumn;
ToolButton1: TToolButton;
Panel1: TPanel;
Label3: TLabel;
Label12: TLabel;
P_CodeName: TEdit;
P_Code: TEdit;
v1Column13: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
Tv1Column5: TcxGridDBColumn;
Tv1Column6: TcxGridDBColumn;
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 TBFindClick(Sender: TObject);
procedure C_CodeNameChange(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure CONNOChange(Sender: TObject);
private
procedure InitGrid();
{ Private declarations }
public
{ Public declarations }
FCode, FClothType, FSeBie, FZZType, FKHName,fiszd: string;
fconno: string;
end;
var
frmSQKCHZSelList2: TfrmSQKCHZSelList2;
implementation
uses
U_DataLink, U_Fun, U_ZDYHelp;
{$R *.dfm}
procedure TfrmSQKCHZSelList2.FormDestroy(Sender: TObject);
begin
frmSQKCHZSelList2 := nil;
end;
procedure TfrmSQKCHZSelList2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmSQKCHZSelList2.InitGrid();
var
fwhere1, Pwhere, fwhere2: string;
begin
Pwhere := SGetFilters(Panel1, 1, 2);
if trim(Pwhere) <> '' then
begin
fwhere1 := fwhere1 + ' and ' + trim(Pwhere);
fwhere2 := fwhere2 + ' where ' + trim(Pwhere);
end;
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
//khname,orderno,CONNO
SQL.Add(' select a.p_code,a.p_codename');
SQL.Add(' ,COUNT(A.JYID) PiQty ,SUM(A.JYGW) JYGW,SUM(A.JYNW) JYNW,SUM(A.JYTare) JYTare,SUM(A.JSLen) JYLen');
SQL.Add(',sum(case when JYType=''<27><>Ʒ'' then 1 else 0 end )cpps');
SQL.Add(' ,sum(case when JYType=''<27><>Ʒ'' then 1 else 0 end )Zpps');
SQL.Add(',sum(case when JYType=''<27><>Ʒ'' then A.JSLen else 0 end )cpqty');
SQL.Add(',sum(case when JYType=''<27><>Ʒ'' then A.JSLen else 0 end )Zpqty');
SQL.Add(' from CK_Cloth_CR A');
SQL.Add(' inner join CK_Cloth_KC B on A.JYID=B.JYID inner join PD_Plan_Main c on A.mainid=c.mainid ');
sql.Add('where B.Valid=''Y'' and A.CRFlag=''<27><><EFBFBD><EFBFBD>''');
if fiszd <> '' then
begin
SQL.Add('AND CONNO=' + QuotedStr(fconNO));
end;
sql.Add('and p_code in(select p_code from Contract_sub E INNER JOIN Contract_MAIN F ON E.CONMAINID=F.CONMAINID WHERE CONNO=' + QuotedStr(Trim(fconno)));
SQL.Add(') ');
SQL.Add(' group by p_code,p_codename');
//,khname,orderno,CONNO
sql.Add(' ORDER BY a.p_code');
// ShowMessage(sql.Text);
Open;
end;
SCreateCDS20(ADOQueryMain, CDS_Main);
SInitCDSData20(ADOQueryMain, CDS_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmSQKCHZSelList2.TBRafreshClick(Sender: TObject);
begin
Panel1.SetFocus;
MovePanel2.Visible := True;
MovePanel2.Refresh;
InitGrid();
MovePanel2.Visible := False;
end;
procedure TfrmSQKCHZSelList2.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
end;
end;
procedure TfrmSQKCHZSelList2.TBCloseClick(Sender: TObject);
begin
WriteCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ר<EFBFBD><D7A8>1', Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD>ֿ<EFBFBD>1');
Close;
end;
procedure TfrmSQKCHZSelList2.FormShow(Sender: TObject);
begin
ReadCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ר<EFBFBD><D7A8>1', Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD>ֿ<EFBFBD>1');
InitGrid();
end;
procedure TfrmSQKCHZSelList2.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 TfrmSQKCHZSelList2.C_CodeNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmSQKCHZSelList2.ToolButton1Click(Sender: TObject);
begin
if CDS_Main.Locate('SSel', True, []) = False then
Exit;
ModalResult := 1;
end;
procedure TfrmSQKCHZSelList2.CONNOChange(Sender: TObject);
begin
if ADOQueryMain.Active = False then
Exit;
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, cds_Main);
SInitCDSData20(ADOQueryMain, cds_Main);
end;
end.