D7szYidui/成品仓库(FinishedClothWarehouse.dll)/U_FinishedClothKCList_SMCK.pas
DESKTOP-E401PHE\Administrator ef99fc8b5e 移交
2025-07-19 09:32:10 +08:00

391 lines
10 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_FinishedClothKCList_SMCK;
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, Menus, cxCheckBox, Clipbrd, cxPC, Math,
cxLookAndFeels, cxLookAndFeelPainters, dxBarBuiltInMenu, cxNavigator;
type
TfrmFinishedClothKCList_SMCK = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBExport: TToolButton;
TBClose: TToolButton;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
cxGridPopupMenu1: TcxGridPopupMenu;
CDS_Main: TClientDataSet;
MovePanel2: TMovePanel;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
ToolButton1: TToolButton;
Panel1: TPanel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label12: TLabel;
Label14: TLabel;
Label9: TLabel;
Label13: TLabel;
P_CodeName: TEdit;
P_Color: TEdit;
orderno: TEdit;
JYID: TEdit;
P_Code: TEdit;
KHName: TEdit;
CarNo: TEdit;
BatchNo: TEdit;
Panel2: TPanel;
Panel3: TPanel;
cxTabControl1: TcxTabControl;
Panel6: TPanel;
BTLP: TButton;
BTNP: TButton;
TCBNOR: TComboBox;
Label1: TLabel;
LBCPAP: TLabel;
tbOK: TToolButton;
cxGrid2: TcxGrid;
Tv1: TcxGridDBTableView;
v1Sel: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
cxgrdPS: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
cxgrdMJLen: TcxGridDBColumn;
cxGrid2Level1: TcxGridLevel;
cxgrdConNoPS: TcxGridDBColumn;
cxgrdCKPS: TcxGridDBColumn;
cxgrdWFPS: TcxGridDBColumn;
Label11: TLabel;
JYType: TComboBox;
v1Column7: TcxGridDBColumn;
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 N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure BTLPClick(Sender: TObject);
procedure BTNPClick(Sender: TObject);
procedure Tv1DblClick(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure TCBNORChange(Sender: TObject);
procedure tbOKClick(Sender: TObject);
procedure ordernoChange(Sender: TObject);
procedure ordernoKeyPress(Sender: TObject; var Key: Char);
private
FLeft, FTop: Integer;
CurrentPage, RecordsNumber: Integer;
procedure InitGrid();
procedure SetStatus();
{ Private declarations }
public
{ Public declarations }
FMainid, FSubId, FConNo, FColor, FCodeName: string;
canshu1: string;
end;
var
frmFinishedClothKCList_SMCK: TfrmFinishedClothKCList_SMCK;
implementation
uses
U_DataLink, U_Fun, U_SysLogHelp;
{$R *.dfm}
procedure TfrmFinishedClothKCList_SMCK.SetStatus();
var
i: Integer;
begin
Panel6.Visible := False;
case cxTabControl1.TabIndex of
0:
begin
ClearOrHideControls(Panel1, '0', True, True);
ClearOrHideControls(Panel1, '1', True, False);
for i := 0 to tv1.ColumnCount - 1 do
begin
tv1.Columns[i].Visible := false;
end;
IsVisibleTV(Panel1, TV1, '0', True);
cxgrdPS.Visible := True;
cxgrdMJLen.Visible := True;
cxgrdCKPS.Visible := True;
cxgrdConNoPS.Visible := True;
cxgrdWFPS.Visible := True;
end;
1:
begin
for i := 0 to tv1.ColumnCount - 1 do
begin
tv1.Columns[i].Visible := True;
end;
cxgrdPS.Visible := false;
cxgrdCKPS.Visible := false;
cxgrdConNoPS.Visible := false;
cxgrdWFPS.Visible := false;
ClearOrHideControls(Panel1, '0', False, True);
ClearOrHideControls(Panel1, '1', False, True);
Panel6.Visible := True;
end;
end;
end;
procedure TfrmFinishedClothKCList_SMCK.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmFinishedClothKCList_SMCK.InitGrid();
var
fwhere, Pwhere, fFSId: string;
Fwfps: Double;
begin
Pwhere := SGetFilters(Panel1, 1, 2);
if trim(Pwhere) <> '' then
fwhere := fwhere + ' and ' + trim(Pwhere);
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
case cxTabControl1.TabIndex of
0: /////////////////////////<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>//////////////////////////////
begin
sql.Add('exec P_CPCK_Get_KCHZ ');
sql.Add(' ''' + fwhere + ''' ');
end;
1: /////////////////////////<2F><>ϸ//////////////////////////////
begin
sql.Add('exec P_CPCK_Get_KC ');
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 = 1 then
LBCPAP.Caption := inttostr(CurrentPage) + '/' + inttostr(ceil(CDS_Main.FieldByName('TotalCount').AsInteger / RecordsNumber));
if cxTabControl1.TabIndex = 0 then
begin
fFSId := CDS_Main.FieldByName('orderno').AsString;
with CDS_Main do
begin
CDS_Main.DisableControls;
First;
while not eof do
begin
if (FieldByName('CKPS').Value <> 0) or (FieldByName('PS').Value <> 0) then
begin
Edit;
Fwfps := FieldByName('ConNoPS').AsFloat - FieldByName('PS').AsFloat - FieldByName('CKPS').AsFloat;
Post;
end
else
begin
Edit;
FieldByName('CKPS').Value := 0;
Fwfps := FieldByName('ConNoPS').AsFloat;
Post;
end;
if Fwfps < 0 then
begin
Fwfps := 0;
end;
//ShowMessage(FloatToStr(Fwfsl));
Edit;
FieldByName('WFRKPS').Value := FloatToStr(Fwfps);
Post;
Next;
end;
end;
CDS_Main.EnableControls;
CDS_Main.Locate('orderno', fFSId, []);
end;
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmFinishedClothKCList_SMCK.TBRafreshClick(Sender: TObject);
begin
orderNo.SetFocus;
ToolBar1.SetFocus;
MovePanel2.Visible := True;
MovePanel2.Refresh;
InitGrid();
MovePanel2.Visible := False;
end;
procedure TfrmFinishedClothKCList_SMCK.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
end;
end;
procedure TfrmFinishedClothKCList_SMCK.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(self.Caption, Tv1, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
Close;
end;
procedure TfrmFinishedClothKCList_SMCK.FormShow(Sender: TObject);
var
fsj: string;
begin
CurrentPage := 1;
RecordsNumber := 500;
fsj := 'select distinct Code=Null,Name=CRType from FinishedCloth_CR where CRFlag=''<27><><EFBFBD><EFBFBD>'' order by CRType ';
// SInitComBoxBySql(ADOQueryTemp, CRType, False, fsj);
ReadCxGrid(self.Caption, Tv1, '<27><>Ʒ<EFBFBD>ֿ<EFBFBD>');
SetStatus();
InitGrid();
end;
procedure TfrmFinishedClothKCList_SMCK.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
exit;
TcxGridToExcel('<27><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>', cxGrid2);
end;
procedure TfrmFinishedClothKCList_SMCK.N1Click(Sender: TObject);
begin
SelOKNo(CDS_Main, True);
end;
procedure TfrmFinishedClothKCList_SMCK.N2Click(Sender: TObject);
begin
SelOKNo(CDS_Main, False);
end;
procedure TfrmFinishedClothKCList_SMCK.ToolButton1Click(Sender: TObject);
begin
frmSysLogHelp := TfrmSysLogHelp.create(self);
with frmSysLogHelp do
begin
fModel := self.caption;
// facction:='<27><><EFBFBD><EFBFBD>ָʾ<D6B8><CABE>ɾ<EFBFBD><C9BE>';
showmodal;
free;
end;
end;
procedure TfrmFinishedClothKCList_SMCK.BTLPClick(Sender: TObject);
begin
if CurrentPage > 1 then
CurrentPage := CurrentPage - 1;
InitGrid();
end;
procedure TfrmFinishedClothKCList_SMCK.BTNPClick(Sender: TObject);
begin
if CurrentPage < CDS_Main.FieldByName('TotalCount').AsInteger / RecordsNumber then
CurrentPage := CurrentPage + 1;
InitGrid();
end;
procedure TfrmFinishedClothKCList_SMCK.Tv1DblClick(Sender: TObject);
var
Tabint: integer;
begin
Tabint := cxTabControl1.TabIndex;
case Tabint of
0:
begin
AssignmentControls(Panel1, CDS_Main, '0');
cxTabControl1.TabIndex := 1;
end;
end;
end;
procedure TfrmFinishedClothKCList_SMCK.cxTabControl1Change(Sender: TObject);
begin
SetStatus();
InitGrid();
end;
procedure TfrmFinishedClothKCList_SMCK.TCBNORChange(Sender: TObject);
begin
RecordsNumber := StrToInt(TCBNOR.Text);
CurrentPage := 1;
InitGrid();
end;
procedure TfrmFinishedClothKCList_SMCK.tbOKClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then
exit;
if cds_main.FieldByName('ssel').AsBoolean = False then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
ModalResult := 1;
end;
procedure TfrmFinishedClothKCList_SMCK.ordernoChange(Sender: TObject);
begin
if ADOQueryMain.Active = False then
Exit;
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, cds_Main);
SInitCDSData20(ADOQueryMain, cds_Main);
end;
procedure TfrmFinishedClothKCList_SMCK.ordernoKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
// SetStatus();
InitGrid();
end;
end;
end.