D10xhGemei/A02基础产品管理/U_ClothInfo.pas
2025-03-20 16:38:30 +08:00

1057 lines
26 KiB
ObjectPascal

unit U_ClothInfo;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB,
cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls,
cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls,
cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid,
cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common,
RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection,
IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, jpeg, U_SLT, ComObj, Menus,
cxLookAndFeels, cxLookAndFeelPainters, cxTLdxBarBuiltInMenu, cxNavigator,
dxBarBuiltInMenu, cxPC, Math, RM_BarCode, dxDateRanges,
IdExplicitTLSClientServerBase, U_BaseList, cxContainer, dxDBBarCode, dxBarCode,
Vcl.Clipbrd, cxTextEdit, BtnEdit, StrUtils, Vcl.Buttons,
dxScrollbarAnnotations, cxProgressBar, dxSkinsCore, dxSkinsDefaultPainters;
type
FdDy = record
inc: integer; //客户端套接字句柄
FDdys: string[32]; //客户端套接字
FdDysName: string[32]; //客户端套接字
end;
TfrmClothInfo = class(TfrmBaseList)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBDel: TToolButton;
TBClose: TToolButton;
DS_Tree: TDataSource;
ADOQueryTree: TADOQuery;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
GPM_1: TcxGridPopupMenu;
cxSplitter1: TcxSplitter;
Panel1: TPanel;
DS_1: TDataSource;
ADOQueryMain: TADOQuery;
CDS_1: TClientDataSet;
TBExport: TToolButton;
RM1: TRMGridReport;
RMDB_Main: TRMDBDataSet;
ODPat: TOpenDialog;
IdFTP1: TIdFTP;
SaveDialog1: TSaveDialog;
TBUP: TToolButton;
TBCopy: TToolButton;
Panel2: TPanel;
DSCYNO: TDataSource;
CDS_CYNO: TClientDataSet;
Panel5: TPanel;
cxDBTreeList1: TcxDBTreeList;
cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn;
Label11: TLabel;
Label12: TLabel;
Panel3: TPanel;
adoqueryPicture: TADOQuery;
TBAdd: TToolButton;
TBEdit: TToolButton;
TBMLEdit: TToolButton;
OpenDialog1: TOpenDialog;
PM_1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
Panel7: TPanel;
Panel4: TPanel;
Label14: TLabel;
LBCPAP1: TLabel;
Button1: TButton;
Button2: TButton;
TCBNOR1: TComboBox;
RMBarCodeObject1: TRMBarCodeObject;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
N3: TMenuItem;
Panel9: TPanel;
Panel10: TPanel;
GroupBox1: TGroupBox;
ScrollBox1: TScrollBox;
CDS_Tree: TClientDataSet;
ADOQueryPrint: TADOQuery;
ToolButton3: TToolButton;
ToolButton4: TToolButton;
ToolButton5: TToolButton;
Label3: TLabel;
Label4: TLabel;
Label9: TLabel;
Label8: TLabel;
C_Code: TcxTextEdit;
C_Name: TcxTextEdit;
C_GramWeight: TcxTextEdit;
C_Composition: TcxTextEdit;
ToolButton6: TToolButton;
GPM_2: TcxGridPopupMenu;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1SSel: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
v1CYNo: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
Tv1Column24: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
Tv1Column8: TcxGridDBColumn;
Tv1Column2: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
Tv1Column1: TcxGridDBColumn;
Tv1Column10: TcxGridDBColumn;
v1Column11: TcxGridDBColumn;
Tv1Column5: TcxGridDBColumn;
Tv1Column9: TcxGridDBColumn;
Tv1Column6: TcxGridDBColumn;
Tv1Column7: TcxGridDBColumn;
Tv1Column23: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
Tv1Column12: TcxGridDBColumn;
Tv1Column14: TcxGridDBColumn;
Tv1Column15: TcxGridDBColumn;
Tv1Column16: TcxGridDBColumn;
Tv1Column17: TcxGridDBColumn;
Tv1Column18: TcxGridDBColumn;
Tv1Column19: TcxGridDBColumn;
Tv1Column20: TcxGridDBColumn;
Tv1Column21: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
DS_2: TDataSource;
ADO_2: TADOQuery;
cxSplitter2: TcxSplitter;
cxSplitter3: TcxSplitter;
ToolButton7: TToolButton;
Tv1Column11: TcxGridDBColumn;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridDBColumn1: TcxGridDBColumn;
cxGridDBColumn2: TcxGridDBColumn;
cxGridLevel2: TcxGridLevel;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure cxDBTreeList1DblClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure TBFilterClick(Sender: TObject);
procedure CYNoChange(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TBUPClick(Sender: TObject);
procedure TBCopyClick(Sender: TObject);
procedure TBAddClick(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure TBMLEditClick(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure TCBNOR1Change(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure TextEdit(Sender: TObject);
procedure HXNameBtnUpClick(Sender: TObject);
procedure HXNameBtnDnClick(Sender: TObject);
procedure cbbHXChange(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure C_CodeKeyPress(Sender: TObject; var Key: Char);
procedure ToolButton5Click(Sender: TObject);
procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure ToolButton6Click(Sender: TObject);
procedure ToolButton7Click(Sender: TObject);
procedure ToolButton8Click(Sender: TObject);
procedure Tv1DblClick(Sender: TObject);
private
{ Private declarations }
CurrentPage, RecordsNumber: Integer;
CTID: string;
PState: Integer;
FCTID, FTopID, FJurisdiction, FCTType, canshu3, CTID1, CTID2: string;
procedure SetStatus();
procedure setpage();
procedure InitTree();
procedure InitGrid();
procedure InitGrid2();
procedure ReadINIFile();
procedure InitImage();
procedure LookImage(FileName: string);
public
dFdDy: array[0..20] of FdDy; //客户端连接数组
{ Public declarations }
end;
var
Mach: array of TfrmSlt;
implementation
uses
U_DataLink, U_RTFun, U_ClothInfoInput, U_CloInfoFileUp, U_ClothTypeSel,
U_ZDYHelp, U_LabelPrint, U_ClothInfoImport, U_SysLogHelp, U_ClothInfoInput1,
U_ClothInfoInput2, U_ClothInfoLog;
{$R *.dfm}
procedure TfrmClothInfo.InitGrid2();
var
SqlStr: string;
begin
if CDS_1.IsEmpty then
exit;
SqlStr := 'select * from BS_Cloth_Info_Sub A where BCIID =' + quotedstr((CDS_1.fieldbyname('BCIID').AsString));
SqlStr := SqlStr + 'ORDER BY CASE WHEN C_COLORNO NOT LIKE ''%[^0-9]%'' THEN dbo.getNum(C_Colorno) ELSE 9999999999 ';
SqlStr := SqlStr + ' END ,C_ColorNo';
InitAdoData(ADO_2, Tv1, SqlStr, '', '');
end;
procedure TfrmClothInfo.setpage();
begin
// cxPageControl3.Refresh;
end;
procedure TfrmClothInfo.LookImage(FileName: string);
var
sFieldName: string;
begin
sFieldName := leftbstr(ExtractFilePath(Application.ExeName), 1) + ':\图片查看';
if not DirectoryExists(pchar(sFieldName)) then
CreateDirectory(pchar(sFieldName), nil);
sFieldName := sFieldName + '\' + trim(FileName);
try
IdFTP1.Host := ReadINIFileStr('SYSTEMSET.INI', 'SERVER', '服务器地址', '127.0.0.1');
IdFTP1.Username := 'three';
IdFTP1.Password := '641010';
IdFTP1.Connect();
except
end;
if IdFTP1.Connected then
begin
application.ProcessMessages;
try
// ShowMessage(PChar(Trim('D:\' + Trim(FileName))));
IdFTP1.Get(Trim(UserDataFlag + 'YP\' + FileName), sFieldName, true, false);
except
Application.MessageBox('客户图样文件不存在', '提示', MB_ICONWARNING);
IdFTP1.Quit;
Exit;
end;
end
else
begin
Application.MessageBox('无法连接文件服务器', '提示', MB_ICONWARNING);
IdFTP1.Quit;
Exit;
end;
if IdFTP1.Connected then
IdFTP1.Quit;
ShellExecute(Handle, 'open', PChar(sFieldName), '', '', SW_SHOWNORMAL);
end;
procedure TfrmClothInfo.SetStatus();
begin
TBAdd.Enabled := False;
TBCopy.Enabled := False;
TBEdit.Enabled := False;
TBMLEdit.Enabled := False;
TBDel.Enabled := False;
TBUP.Enabled := False;
if FJurisdiction <> '查询' then
begin
TBAdd.Enabled := true;
TBCopy.Enabled := true;
TBEdit.Enabled := true;
TBMLEdit.Enabled := true;
TBDel.Enabled := true;
TBUP.Enabled := true;
end;
end;
procedure TfrmClothInfo.InitTree();
begin
try
cxDBTreeList1.BeginUpdate;
CDS_Tree.DisableControls;
with ADOQueryTree do
begin
Close;
SQL.Clear;
SQL.Add('select * from BS_Cloth_Type where CTType=' + quotedstr(FCTType));
SQL.Add('order by CTName');
Open;
end;
SCreateCDS(ADOQueryTree, CDS_Tree);
SInitCDSData(ADOQueryTree, CDS_Tree);
finally
CDS_Tree.EnableControls;
cxDBTreeList1.EndUpdate;
cxDBTreeList1.Items[0].Expand(false);
end;
Self.cds_tree.Locate('CTName', '成品', []);
end;
procedure TfrmClothInfo.InitGrid();
var
fwhere, Pwhere, SqlStr: string;
begin
Panel2.Visible := True;
Panel2.Refresh;
setpage();
Pwhere := SGetFilters(Panel1, 1, 2);
if trim(Pwhere) <> '' then
begin
if fwhere <> '' then
fwhere := fwhere + ' and ' + trim(Pwhere)
else
fwhere := ' where ' + trim(Pwhere);
end;
SqlStr := ' exec P_BS_CloInfo_Get ';
SqlStr := SqlStr + ' @CTID=' + quotedstr(Trim(CDS_Tree.fieldbyname('CTID').AsString));
SqlStr := SqlStr + ',@pageIndex=' + inttostr(CurrentPage);
SqlStr := SqlStr + ',@pageSize=' + inttostr(RecordsNumber);
SqlStr := SqlStr + ',@criteria= ' + quotedstr(fwhere);
InitCDSData(ADOQueryMain, CDS_1, Tv1, SqlStr, SGetFilters(Panel1, 1, 2), 'BCIID');
LBCPAP1.Caption := inttostr(CurrentPage) + '/' + inttostr(ceil(CDS_1.FieldByName('TotalCount').AsInteger / RecordsNumber));
Panel2.Visible := False;
end;
procedure TfrmClothInfo.FormClose(Sender: TObject; var Action: TCloseAction);
var
i, j: integer;
begin
inherited;
j := length(Mach);
if j > 0 then
begin
for i := 0 to j - 1 do
begin
Mach[i].free;
end;
end;
SetLength(Mach, 0);
Action := cafree;
end;
procedure TfrmClothInfo.FormCreate(Sender: TObject);
begin
inherited;
FJurisdiction := Trim(Self.fParameters1);
FCTType := Trim(self.fParameters2);
canshu3 := Trim(self.fParameters3);
end;
procedure TfrmClothInfo.TBCloseClick(Sender: TObject);
begin
if DirectoryExists(ExtractFileDir('D:\Right1209')) then
winexec('cmd /c rd /s /q D:\Right1209', sw_hide);
Close;
end;
procedure TfrmClothInfo.TBDelClick(Sender: TObject);
var
RTValues: TArray<string>;
begin
if CDS_1.IsEmpty then
Exit;
RTValues := SelCDSKey(CDS_1, ['BCIID']);
if Application.MessageBox('确定要删除数据吗?', '提示', 32 + 4) <> IDYES then
Exit;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
Sql.Clear;
Sql.Add('exec P_BS_Cloth_Info_Del ');
Sql.Add(' @BCIIDS=' + quotedstr(RTValues[0]));
Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
Sql.Add(',@DName=' + quotedstr(Trim(DName)));
//操作日志
sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( ');
sql.Add(' ' + quotedstr(trim(DName)));
sql.Add(',getdate() ');
sql.Add(',' + quotedstr(trim(self.Caption)));
sql.Add(',' + quotedstr(trim('成品信息删除')));
sql.Add(',' + quotedstr(trim('成品编号:' + trim(Self.CDS_1.fieldbyname('C_Code').AsString))));
sql.Add(',' + quotedstr(trim('成功')));
sql.Add(')');
OPEN;
end;
if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
ADOQueryCmd.Connection.CommitTrans;
InitGrid();
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox(PChar(Exception(ExceptObject).Message), '提示信息', 0);
end;
end;
procedure TfrmClothInfo.FormShow(Sender: TObject);
begin
inherited;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' exec P_BS_CloInfo_Hot ');
ExecSQL;
end;
ReadCxGrid(self.Caption + 'TV1', Tv1, '样品管理');
ReadCxGrid(self.Caption + 'TV2', Tv2, '样品管理');
application.ProcessMessages;
RecordsNumber := 500;
CurrentPage := 1;
InitTree();
SetStatus();
InitGrid();
InitGrid2();
end;
procedure TfrmClothInfo.cbbHXChange(Sender: TObject);
begin
InitImage();
InitGrid2();
end;
procedure TfrmClothInfo.cxDBTreeList1DblClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmClothInfo.TBRafreshClick(Sender: TObject);
begin
// InitTree();
InitGrid();
InitImage();
InitGrid2();
end;
procedure TfrmClothInfo.TBFilterClick(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS(ADOQueryMain, CDS_1);
SInitCDSData(ADOQueryMain, CDS_1);
end;
end;
procedure TfrmClothInfo.CYNoChange(Sender: TObject);
begin
//if Length(Trim(TEdit(Sender).Text))<4 then Exit;
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS(ADOQueryMain, CDS_1);
SInitCDSData(ADOQueryMain, CDS_1);
end;
end;
procedure TfrmClothInfo.C_CodeKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
CurrentPage := 1;
InitGrid();
InitImage();
InitGrid2();
end;
end;
procedure TfrmClothInfo.TBExportClick(Sender: TObject);
begin
if CDS_1.IsEmpty then
Exit;
TcxGridToExcel(self.Caption, cxGrid1);
end;
procedure TfrmClothInfo.TBUPClick(Sender: TObject);
begin
try
frmCloInfoFileUp := TfrmCloInfoFileUp.Create(Application);
with frmCloInfoFileUp do
begin
Code.Text := Trim(Self.CDS_1.fieldbyname('C_Code').AsString);
FBCIID := Trim(Self.CDS_1.fieldbyname('BCIID').AsString);
if ShowModal = 1 then
begin
Self.InitGrid();
// Self.CDS_1.Locate('BCIID', BCIID, []);
end;
end;
finally
frmCloInfoFileUp.Free;
end;
InitImage();
end;
procedure TfrmClothInfo.ReadINIFile();
var
programIni: Tinifile; //配置文件名
FileName: string;
begin
FileName := ExtractFilePath(Paramstr(0)) + 'SYSTEMSET.INI';
programIni := Tinifile.create(FileName);
server := programIni.ReadString('SERVER', '服务器地址', '127.0.0.1');
programIni.Free;
end;
procedure TfrmClothInfo.InitImage();
var
i, j: integer;
jpg: TJpegImage;
myStream: TADOBlobStream;
begin
j := length(Mach);
if j > 0 then
begin
for i := 0 to j - 1 do
begin
Mach[i].free;
end;
end;
SetLength(Mach, 0);
if CDS_1.IsEmpty then
exit;
try
with adoqueryPicture do
begin
close;
sql.Clear;
sql.Add(' select A.TFID,A.WBID,A.FilesOther,A.FileName from TP_File A ');
sql.add('where A.WBID=' + quotedstr(trim(CDS_1.fieldbyname('BCIID').AsString)));
open;
end;
j := adoqueryPicture.RecordCount;
if j < 1 then
exit;
adoqueryPicture.DisableControls;
adoqueryPicture.First;
SetLength(Mach, j);
jpg := TJpegImage.Create();
for i := 0 to j - 1 do
begin
if triM(adoqueryPicture.fieldbyname('FilesOther').AsString) <> '' then
begin
myStream := tadoblobstream.Create(tblobfield(adoqueryPicture.fieldbyname('FilesOther')), bmread);
jpg.LoadFromStream(myStream);
Mach[i] := TfrmSlt.Create(Self);
Mach[i].Name := trim(adoqueryPicture.fieldbyname('TFID').AsString);
Mach[i].Parent := ScrollBox1;
Mach[i].Left := 0 + i * 165;
Mach[i].Init(adoqueryPicture.fieldbyname('TFID').AsString, adoqueryPicture.fieldbyname('FileName').AsString, jpg);
end;
adoqueryPicture.Next;
end;
adoqueryPicture.EnableControls;
finally
jpg.free;
application.ProcessMessages;
end;
end;
procedure TfrmClothInfo.TBCopyClick(Sender: TObject);
begin
if Self.CDS_Tree.locate('CTName', Self.CDS_1.fieldbyname('CTName').AsString, []) then
begin
try
frmClothInfoInput := TfrmClothInfoInput.Create(Application);
with frmClothInfoInput do
begin
TypeInt := 1;
canshu3 := Self.canshu3;
FBCIID := Trim(Self.CDS_1.fieldbyname('BCIID').AsString);
FCTID := Trim(Self.CDS_Tree.fieldbyname('CTID').AsString);
if ShowModal = 1 then
begin
Self.InitGrid();
end;
end;
finally
frmClothInfoInput.Free;
end;
end;
end;
procedure TfrmClothInfo.TBAddClick(Sender: TObject);
var
i: Integer;
FieldName: string;
begin
if Self.CDS_Tree.fieldbyname('CTLevel').AsInteger = 1 then
begin
Application.MessageBox('请选择产品分类!', '提示', 0);
Exit;
end;
try
frmClothInfoInput := TfrmClothInfoInput.Create(Application);
with frmClothInfoInput do
begin
canshu3 := Self.canshu3;
TypeInt := 0;
FBCIID := '';
FCTID := Trim(Self.CDS_Tree.fieldbyname('CTID').AsString);
if ShowModal = 1 then
begin
Self.InitGrid();
end;
end;
finally
frmClothInfoInput.Free;
end;
end;
procedure TfrmClothInfo.TBEditClick(Sender: TObject);
begin
if CDS_1.IsEmpty then
Exit;
try
frmClothInfoInput := TfrmClothInfoInput.Create(Application);
with frmClothInfoInput do
begin
canshu3 := Self.canshu3;
TypeInt := 2;
FBCIID := Trim(Self.CDS_1.fieldbyname('BCIID').AsString);
FCTID := Trim(Self.CDS_Tree.fieldbyname('CTID').AsString);
//操作日志
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( ');
sql.Add(' ' + quotedstr(trim(DName)));
sql.Add(',getdate() ');
sql.Add(',' + quotedstr(trim(self.Caption)));
sql.Add(',' + quotedstr(trim('成品信息修改')));
sql.Add(',' + quotedstr(trim('成品编号:' + trim(Self.CDS_1.fieldbyname('C_Code').AsString))));
sql.Add(',' + quotedstr(trim('成功')));
sql.Add(')');
EXECSQL;
end;
if ShowModal = 1 then
begin
Self.InitGrid();
end;
end;
finally
frmClothInfoInput.Free;
end;
end;
procedure TfrmClothInfo.TextEdit(Sender: TObject);
var
mvalue, FFieldName: string;
begin
mvalue := TcxTextEdit(Sender).EditingText;
FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName);
with CDS_1 do
begin
Edit;
FieldByName(FFieldName).Value := mvalue;
Post;
end;
if mvalue = '' then
mvalue := '0';
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('update BS_Cloth_Info set ' + FFieldName + '=' + (Trim(mvalue)));
sql.Add('where BCIID=' + quotedstr(Trim(CDS_1.fieldbyname('BCIID').AsString)));
ExecSQL;
end;
Tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmClothInfo.TBMLEditClick(Sender: TObject);
var
MCTID: string;
begin
if CDS_1.IsEmpty then
exit;
if CDS_1.Locate('ssel', true, []) = false then
begin
Application.MessageBox('没有选择数据!', '提示', 0);
Exit;
end;
MCTID := '';
try
frmClothTypeSel := TfrmClothTypeSel.create(self);
with frmClothTypeSel do
begin
FCTType := Self.FCTType;
if showmodal = 1 then
begin
MCTID := trim(ADOQueryHelp.fieldbyname('CTID').asstring);
end;
end;
finally
frmClothTypeSel.free;
end;
if trim(MCTID) <> '' then
begin
try
with CDS_1 do
begin
DisableControls;
First;
while not eof do
begin
if fieldbyname('ssel').AsBoolean then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update BS_Cloth_Info SET CTID=''' + trim(MCTID) + ''' ');
sql.Add('where BCIID=' + quotedstr(trim(CDS_1.fieldbyname('BCIID').AsString)));
execsql;
end;
end;
next;
end;
First;
EnableControls;
end;
application.MessageBox('操作成功!', '提示信息');
initGrid();
except
CDS_1.EnableControls;
application.MessageBox('操作失败!', '提示信息', 0);
end;
end;
end;
procedure TfrmClothInfo.N1Click(Sender: TObject);
begin
SelOKNoFiler(Tv1, True);
end;
procedure TfrmClothInfo.N2Click(Sender: TObject);
begin
SelOKNoFiler(Tv1, False);
end;
procedure TfrmClothInfo.N3Click(Sender: TObject);
begin
Clipboard.SetTextBuf(PChar(Trim(CDS_1.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString)));
end;
procedure TfrmClothInfo.TCBNOR1Change(Sender: TObject);
begin
RecordsNumber := StrToInt(TCBNOR1.Text);
CurrentPage := 1;
C_Code.SetFocus;
InitGrid();
end;
procedure TfrmClothInfo.HXNameBtnDnClick(Sender: TObject);
begin
TBtnEditC(Sender).Text := '';
TBtnEditC(Sender).TxtCode := '';
end;
procedure TfrmClothInfo.HXNameBtnUpClick(Sender: TObject);
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'HX' + Trim(Self.CDS_1.fieldbyname('CYNO').AsString);
flagname := '花型';
if ShowModal = 1 then
begin
TEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmClothInfo.Button1Click(Sender: TObject);
begin
if CurrentPage > 1 then
CurrentPage := CurrentPage - 1;
InitGrid();
end;
procedure TfrmClothInfo.Button2Click(Sender: TObject);
begin
if CurrentPage < CDS_1.FieldByName('TotalCount').AsInteger / RecordsNumber then
CurrentPage := CurrentPage + 1;
InitGrid();
end;
procedure TfrmClothInfo.ToolButton1Click(Sender: TObject);
begin
try
frmClothInfoInput := TfrmClothInfoInput.Create(Application);
with frmClothInfoInput do
begin
canshu3 := Self.canshu3;
FBCIID := Trim(Self.CDS_1.fieldbyname('BCIID').AsString);
FCTID := Trim(Self.CDS_Tree.fieldbyname('CTID').AsString);
ToolButton1.Visible := False;
if ShowModal = 1 then
begin
Self.InitGrid();
end;
end;
finally
frmClothInfoInput.Free;
end;
end;
procedure TfrmClothInfo.ToolButton2Click(Sender: TObject);
begin
WriteCxGrid(self.Caption + 'TV1', Tv1, '样品管理');
WriteCxGrid(self.Caption + 'TV2', Tv2, '样品管理');
end;
procedure TfrmClothInfo.ToolButton3Click(Sender: TObject);
var
WSql: string;
begin
if CDS_1.IsEmpty then
Exit;
Tv1.OnFocusedRecordChanged := nil;
if CDS_1.Locate('SSel', True, []) = False then
begin
// Tv1.OnFocusedRecordChanged := Tv1FocusedRecordChanged;
Application.MessageBox('没有选择数据!', '提示', 0);
Exit;
end;
WSql := '';
CDS_1.DisableControls;
with CDS_1 do
begin
First;
while not Eof do
begin
if CDS_1.fieldbyname('SSel').AsBoolean then
begin
if WSql <> '' then
begin
WSql := WSql + ',' + QuotedStr(Trim(CDS_1.fieldbyname('BCIID').AsString));
end
else
begin
WSql := QuotedStr(Trim(CDS_1.fieldbyname('BCIID').AsString));
end;
end;
Next;
end;
end;
CDS_1.Locate('SSel', True, []);
// Tv1.OnFocusedRecordChanged := Tv1FocusedRecordChanged;
CDS_1.EnableControls;
try
frmLabelPrint := TfrmLabelPrint.Create(Application);
with frmLabelPrint do
begin
FLMType := 'ClothInfoPrint';
FFiltration1 := WSql;
if ShowModal = 1 then
begin
// Self.InitGrid();
end;
end;
finally
frmLabelPrint.Free;
end;
end;
procedure TfrmClothInfo.ToolButton4Click(Sender: TObject);
begin
try
frmClothInfoImport := TfrmClothInfoImport.Create(Application);
with frmClothInfoImport do
begin
FCTID := Trim(Self.CDS_Tree.fieldbyname('CTID').AsString);
if ShowModal = 1 then
begin
Self.InitGrid();
end;
end;
finally
frmClothInfoImport.Free;
end;
end;
procedure TfrmClothInfo.ToolButton5Click(Sender: TObject);
begin
try
frmSysLogHelp := TfrmSysLogHelp.Create(Application);
with frmSysLogHelp do
begin
Opevent.Text := '成品编号';
if ShowModal = 1 then
begin
end;
end;
finally
frmSysLogHelp.Free;
end;
end;
procedure TfrmClothInfo.ToolButton6Click(Sender: TObject);
begin
try
frmClothInfoLog := TfrmClothInfoLog.Create(Application);
with frmClothInfoLog do
begin
FBCIID := Trim(Self.CDS_1.fieldbyname('BCIID').AsString);
if ShowModal = 1 then
begin
Self.InitGrid();
end;
end;
finally
frmClothInfoLog.Free;
end;
end;
procedure TfrmClothInfo.ToolButton7Click(Sender: TObject);
var
WSql: string;
begin
if CDS_1.IsEmpty then
Exit;
Tv1.OnFocusedRecordChanged := nil;
if CDS_1.Locate('SSel', True, []) = False then
begin
// Tv1.OnFocusedRecordChanged := Tv1FocusedRecordChanged;
Application.MessageBox('没有选择数据!', '提示', 0);
Exit;
end;
WSql := '';
CDS_1.DisableControls;
with CDS_1 do
begin
First;
while not Eof do
begin
if CDS_1.fieldbyname('SSel').AsBoolean then
begin
if WSql <> '' then
begin
WSql := WSql + ',' + QuotedStr(Trim(CDS_1.fieldbyname('BCIID').AsString));
end
else
begin
WSql := QuotedStr(Trim(CDS_1.fieldbyname('BCIID').AsString));
end;
end;
Next;
end;
end;
CDS_1.Locate('SSel', True, []);
// Tv1.OnFocusedRecordChanged := Tv1FocusedRecordChanged;
CDS_1.EnableControls;
try
frmLabelPrint := TfrmLabelPrint.Create(Application);
with frmLabelPrint do
begin
FLMType := 'ClothInfoPrint2';
FFiltration1 := WSql;
if ShowModal = 1 then
begin
// Self.InitGrid();
end;
end;
finally
frmLabelPrint.Free;
end;
end;
procedure TfrmClothInfo.ToolButton8Click(Sender: TObject);
var
MCTID: string;
begin
end;
procedure TfrmClothInfo.Tv1DblClick(Sender: TObject);
begin
if TBEdit.Visible and TBEdit.Enabled then
TBEdit.Click
else
ToolButton1.Click;
end;
procedure TfrmClothInfo.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
InitImage();
InitGrid2();
end;
end.