2025-03-01 10:55:52 +08:00
|
|
|
|
unit U_WBSpecList;
|
|
|
|
|
|
|
|
|
|
|
|
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, cxCheckBox, RM_Common, RM_Class, RM_e_Xls, RM_Dataset,
|
|
|
|
|
|
RM_System, RM_GridReport, Menus, cxCalendar, cxButtonEdit, cxTextEdit, cxPC,
|
|
|
|
|
|
cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu,
|
|
|
|
|
|
dxDateRanges, U_BaseList, dxScrollbarAnnotations, cxContainer, cxMemo,
|
2025-07-18 15:42:53 +08:00
|
|
|
|
dxSkinsCore, dxSkinsDefaultPainters, cxProgressBar, dxSkinOffice2013White,
|
|
|
|
|
|
dxSkinSharpPlus, dxSkinWXI;
|
2025-03-01 10:55:52 +08:00
|
|
|
|
|
|
|
|
|
|
type
|
|
|
|
|
|
TfrmWBSpecList = class(TfrmBaseList)
|
|
|
|
|
|
ToolBar1: TToolBar;
|
|
|
|
|
|
TBRafresh: TToolButton;
|
|
|
|
|
|
TBFind: TToolButton;
|
|
|
|
|
|
TBExport: TToolButton;
|
|
|
|
|
|
TBClose: TToolButton;
|
|
|
|
|
|
Panel1: TPanel;
|
|
|
|
|
|
ADOQueryCmd: TADOQuery;
|
|
|
|
|
|
ADOQueryMain: TADOQuery;
|
|
|
|
|
|
ADOQueryTemp: TADOQuery;
|
|
|
|
|
|
DataSource1: TDataSource;
|
|
|
|
|
|
cxGridPopupMenu1: TcxGridPopupMenu;
|
|
|
|
|
|
CDS_Main: TClientDataSet;
|
|
|
|
|
|
TBDel: TToolButton;
|
|
|
|
|
|
TBAdd: TToolButton;
|
|
|
|
|
|
TBEdit: TToolButton;
|
|
|
|
|
|
cxGrid1: TcxGrid;
|
|
|
|
|
|
Tv1: TcxGridDBTableView;
|
|
|
|
|
|
v1Column8: TcxGridDBColumn;
|
|
|
|
|
|
v1Column12: TcxGridDBColumn;
|
|
|
|
|
|
cxGrid1Level1: TcxGridLevel;
|
|
|
|
|
|
v1Column9: TcxGridDBColumn;
|
|
|
|
|
|
Label2: TLabel;
|
|
|
|
|
|
Label4: TLabel;
|
|
|
|
|
|
WB_Code: TcxTextEdit;
|
|
|
|
|
|
WB_Name: TcxTextEdit;
|
|
|
|
|
|
ToolButton1: TToolButton;
|
|
|
|
|
|
Tv1Column1: TcxGridDBColumn;
|
|
|
|
|
|
Tv1Column6: TcxGridDBColumn;
|
|
|
|
|
|
Tv1Column11: TcxGridDBColumn;
|
|
|
|
|
|
Tv1Column12: TcxGridDBColumn;
|
|
|
|
|
|
Panel2: TPanel;
|
|
|
|
|
|
cxGrid2: TcxGrid;
|
|
|
|
|
|
TV2: TcxGridDBTableView;
|
|
|
|
|
|
v1Column18: TcxGridDBColumn;
|
|
|
|
|
|
v1Column15: TcxGridDBColumn;
|
|
|
|
|
|
cxGridDBColumn1: TcxGridDBColumn;
|
|
|
|
|
|
cxGridDBColumn2: TcxGridDBColumn;
|
|
|
|
|
|
v1SPName: TcxGridDBColumn;
|
|
|
|
|
|
v1SPSpec: TcxGridDBColumn;
|
|
|
|
|
|
v1Column1: TcxGridDBColumn;
|
|
|
|
|
|
cxGridDBColumn3: TcxGridDBColumn;
|
|
|
|
|
|
cxGridDBColumn4: TcxGridDBColumn;
|
|
|
|
|
|
v1Column3: TcxGridDBColumn;
|
|
|
|
|
|
cxGridDBColumn5: TcxGridDBColumn;
|
|
|
|
|
|
cxGridLevel1: TcxGridLevel;
|
|
|
|
|
|
WB_YarnArrNote: TcxMemo;
|
|
|
|
|
|
CDS_2: TClientDataSet;
|
|
|
|
|
|
GPM_2: TcxGridPopupMenu;
|
|
|
|
|
|
DS_2: TDataSource;
|
|
|
|
|
|
ADO_2: TADOQuery;
|
|
|
|
|
|
TV2Column1: TcxGridDBColumn;
|
|
|
|
|
|
Tv1Column7: TcxGridDBColumn;
|
|
|
|
|
|
TV2Column2: TcxGridDBColumn;
|
|
|
|
|
|
TV2Column3: TcxGridDBColumn;
|
|
|
|
|
|
TV2Column4: TcxGridDBColumn;
|
2025-03-12 16:13:21 +08:00
|
|
|
|
ToolButton2: TToolButton;
|
2025-04-23 15:09:48 +08:00
|
|
|
|
TV2Column5: TcxGridDBColumn;
|
2025-07-10 17:29:27 +08:00
|
|
|
|
Tv1Column13: TcxGridDBColumn;
|
2026-01-14 17:32:54 +08:00
|
|
|
|
TbLogLook: TToolButton;
|
2025-12-09 17:30:17 +08:00
|
|
|
|
TV2FF: TcxGridDBColumn;
|
|
|
|
|
|
TV2YarnFactor: TcxGridDBColumn;
|
2025-03-01 10:55:52 +08:00
|
|
|
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
|
|
|
|
|
procedure FormCreate(Sender: TObject);
|
|
|
|
|
|
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 N1Click(Sender: TObject);
|
|
|
|
|
|
procedure N2Click(Sender: TObject);
|
|
|
|
|
|
procedure TBDelClick(Sender: TObject);
|
|
|
|
|
|
procedure TBAddClick(Sender: TObject);
|
|
|
|
|
|
procedure TBEditClick(Sender: TObject);
|
|
|
|
|
|
procedure ToolButton1Click(Sender: TObject);
|
|
|
|
|
|
procedure Y_NamePropertiesEditValueChanged(Sender: TObject);
|
|
|
|
|
|
procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean);
|
|
|
|
|
|
procedure WB_CodePropertiesChange(Sender: TObject);
|
2025-03-12 16:13:21 +08:00
|
|
|
|
procedure ToolButton2Click(Sender: TObject);
|
2026-01-14 17:32:54 +08:00
|
|
|
|
procedure TbLogLookClick(Sender: TObject);
|
2025-03-01 10:55:52 +08:00
|
|
|
|
private
|
|
|
|
|
|
canshu1, FSTKName, canshu3: string;
|
|
|
|
|
|
procedure InitGrid();
|
|
|
|
|
|
{ Private declarations }
|
|
|
|
|
|
public
|
|
|
|
|
|
|
|
|
|
|
|
{ Public declarations }
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
implementation
|
|
|
|
|
|
|
|
|
|
|
|
uses
|
2025-11-16 11:44:23 +08:00
|
|
|
|
U_DataLink, U_RTFun, U_WBSpecInPut, U_ZDYHelp, U_LabelPrint, U_LogInput;
|
2025-03-01 10:55:52 +08:00
|
|
|
|
|
|
|
|
|
|
{$R *.dfm}
|
|
|
|
|
|
|
|
|
|
|
|
procedure TfrmWBSpecList.FormClose(Sender: TObject; var Action: TCloseAction);
|
|
|
|
|
|
begin
|
|
|
|
|
|
inherited;
|
|
|
|
|
|
Action := caFree;
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
procedure TfrmWBSpecList.FormCreate(Sender: TObject);
|
|
|
|
|
|
begin
|
|
|
|
|
|
inherited;
|
|
|
|
|
|
canshu1 := Trim(DParameters1);
|
|
|
|
|
|
FSTKName := Trim(DParameters2);
|
|
|
|
|
|
canshu3 := Trim(DParameters3);
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
procedure TfrmWBSpecList.InitGrid();
|
|
|
|
|
|
begin
|
|
|
|
|
|
try
|
|
|
|
|
|
ADOQueryMain.DisableControls;
|
|
|
|
|
|
with ADOQueryMain do
|
|
|
|
|
|
begin
|
|
|
|
|
|
Filtered := False;
|
|
|
|
|
|
Close;
|
|
|
|
|
|
sql.Clear;
|
|
|
|
|
|
sql.Add(' select * from Tat_WB_Spec ');
|
|
|
|
|
|
Open;
|
|
|
|
|
|
end;
|
|
|
|
|
|
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
|
|
|
|
|
|
SCreateCDS(ADOQueryMain, CDS_Main);
|
|
|
|
|
|
SInitCDSData(ADOQueryMain, CDS_Main);
|
|
|
|
|
|
finally
|
|
|
|
|
|
ADOQueryMain.EnableControls;
|
|
|
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
procedure TfrmWBSpecList.TBRafreshClick(Sender: TObject);
|
|
|
|
|
|
begin
|
|
|
|
|
|
InitGrid();
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
procedure TfrmWBSpecList.ToolButton1Click(Sender: TObject);
|
|
|
|
|
|
begin
|
|
|
|
|
|
WriteCxGrid(Self.Caption + 'Tv1', Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD>ֿ<EFBFBD>');
|
|
|
|
|
|
WriteCxGrid(Self.Caption + 'Tv2', Tv2, '<27><><EFBFBD><EFBFBD><EFBFBD>ֿ<EFBFBD>');
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
2025-03-12 16:13:21 +08:00
|
|
|
|
procedure TfrmWBSpecList.ToolButton2Click(Sender: TObject);
|
|
|
|
|
|
begin
|
|
|
|
|
|
if CDS_Main.IsEmpty then
|
|
|
|
|
|
Exit;
|
|
|
|
|
|
|
|
|
|
|
|
try
|
|
|
|
|
|
frmLabelPrint := TfrmLabelPrint.Create(Application);
|
|
|
|
|
|
with frmLabelPrint do
|
|
|
|
|
|
begin
|
|
|
|
|
|
FLMType := 'WBGYPrint';
|
|
|
|
|
|
FFiltration1 := Trim(CDS_Main.fieldbyname('WB_Code').AsString);
|
|
|
|
|
|
if ShowModal = 1 then
|
|
|
|
|
|
begin
|
|
|
|
|
|
|
|
|
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
finally
|
|
|
|
|
|
frmLabelPrint.Free;
|
|
|
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
2026-01-14 17:32:54 +08:00
|
|
|
|
procedure TfrmWBSpecList.TbLogLookClick(Sender: TObject);
|
2025-11-16 11:44:23 +08:00
|
|
|
|
begin
|
|
|
|
|
|
frmLogInput := TfrmLogInput.Create(Application);
|
|
|
|
|
|
with frmLogInput do
|
|
|
|
|
|
begin
|
2026-01-14 17:32:54 +08:00
|
|
|
|
fWB_Code := Self.CDS_Main.FieldByName('WB_Code').AsString;
|
2025-12-09 17:30:17 +08:00
|
|
|
|
fFlag := '<27>鿴';
|
2026-01-14 17:32:54 +08:00
|
|
|
|
flogFlag := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>';
|
2025-11-16 11:44:23 +08:00
|
|
|
|
if ShowModal = 1 then
|
|
|
|
|
|
begin
|
|
|
|
|
|
|
|
|
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
2025-03-01 10:55:52 +08:00
|
|
|
|
procedure TfrmWBSpecList.Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean);
|
|
|
|
|
|
begin
|
|
|
|
|
|
WB_YarnArrNote.Text := Trim(CDS_Main.fieldbyname('WB_YarnArrNote').AsString);
|
|
|
|
|
|
with ADO_2 do
|
|
|
|
|
|
begin
|
|
|
|
|
|
Close;
|
|
|
|
|
|
sql.Clear;
|
|
|
|
|
|
sql.Add(' select * from Tat_WB_Formula ');
|
|
|
|
|
|
sql.Add(' where WBSID=''' + Trim(CDS_Main.fieldbyname('WBSID').AsString) + '''');
|
|
|
|
|
|
Open;
|
|
|
|
|
|
end;
|
|
|
|
|
|
SCreateCDS(ADO_2, CDS_2);
|
|
|
|
|
|
SInitCDSData(ADO_2, CDS_2);
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
procedure TfrmWBSpecList.WB_CodePropertiesChange(Sender: TObject);
|
|
|
|
|
|
begin
|
|
|
|
|
|
|
|
|
|
|
|
TBFind.Click;
|
|
|
|
|
|
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
procedure TfrmWBSpecList.Y_NamePropertiesEditValueChanged(Sender: TObject);
|
|
|
|
|
|
begin
|
|
|
|
|
|
TBFind.Click;
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
procedure TfrmWBSpecList.ConNoMChange(Sender: TObject);
|
|
|
|
|
|
begin
|
|
|
|
|
|
if ADOQueryMain.Active then
|
|
|
|
|
|
begin
|
|
|
|
|
|
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
|
|
|
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
procedure TfrmWBSpecList.TBCloseClick(Sender: TObject);
|
|
|
|
|
|
begin
|
|
|
|
|
|
Close;
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
procedure TfrmWBSpecList.FormShow(Sender: TObject);
|
|
|
|
|
|
begin
|
|
|
|
|
|
inherited;
|
|
|
|
|
|
ReadCxGrid(Self.Caption + 'Tv1', Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD>ֿ<EFBFBD>');
|
|
|
|
|
|
ReadCxGrid(Self.Caption + 'Tv2', Tv2, '<27><><EFBFBD><EFBFBD><EFBFBD>ֿ<EFBFBD>');
|
|
|
|
|
|
InitGrid();
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
procedure TfrmWBSpecList.TBExportClick(Sender: TObject);
|
|
|
|
|
|
begin
|
|
|
|
|
|
if ADOQueryMain.IsEmpty then
|
|
|
|
|
|
exit;
|
|
|
|
|
|
TcxGridToExcel(trim(self.Caption), cxGrid1);
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
procedure TfrmWBSpecList.TBFindClick(Sender: TObject);
|
|
|
|
|
|
begin
|
|
|
|
|
|
if ADOQueryMain.Active then
|
|
|
|
|
|
begin
|
|
|
|
|
|
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
|
|
|
|
|
|
SCreateCDS(ADOQueryMain, CDS_Main);
|
|
|
|
|
|
SInitCDSData(ADOQueryMain, CDS_Main);
|
|
|
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
procedure TfrmWBSpecList.N1Click(Sender: TObject);
|
|
|
|
|
|
begin
|
|
|
|
|
|
SelOKNo(CDS_Main, True);
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
procedure TfrmWBSpecList.N2Click(Sender: TObject);
|
|
|
|
|
|
begin
|
|
|
|
|
|
SelOKNo(CDS_Main, False);
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
procedure TfrmWBSpecList.TBDelClick(Sender: TObject);
|
|
|
|
|
|
begin
|
|
|
|
|
|
if CDS_Main.IsEmpty then
|
|
|
|
|
|
Exit;
|
|
|
|
|
|
|
|
|
|
|
|
with ADOQueryTemp do
|
|
|
|
|
|
begin
|
|
|
|
|
|
Close;
|
|
|
|
|
|
sql.Clear;
|
|
|
|
|
|
sql.Add('select * from Tat_WB_Card where WB_Code=''' + Trim(CDS_Main.fieldbyname('WB_Code').AsString) + '''');
|
|
|
|
|
|
Open;
|
|
|
|
|
|
end;
|
|
|
|
|
|
if ADOQueryTemp.IsEmpty = False then
|
|
|
|
|
|
begin
|
2025-11-16 11:44:23 +08:00
|
|
|
|
Application.MessageBox('<27>ѿ<EFBFBD><D1BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>!', '<27><>ʾ', 0);
|
2025-03-01 10:55:52 +08:00
|
|
|
|
Exit;
|
|
|
|
|
|
end;
|
|
|
|
|
|
if Application.MessageBox('ȷ<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
|
|
|
|
|
|
Exit;
|
|
|
|
|
|
try
|
|
|
|
|
|
ADOQueryCmd.Connection.BeginTrans;
|
|
|
|
|
|
|
|
|
|
|
|
with ADOQueryCmd do
|
|
|
|
|
|
begin
|
|
|
|
|
|
Close;
|
|
|
|
|
|
sql.Clear;
|
|
|
|
|
|
sql.Add(' delete Tat_WB_Spec where WBSID=''' + Trim(CDS_Main.fieldbyname('WBSID').AsString) + '''');
|
|
|
|
|
|
ExecSQL;
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
ADOQueryCmd.Connection.CommitTrans;
|
|
|
|
|
|
CDS_Main.Delete;
|
|
|
|
|
|
except
|
|
|
|
|
|
ADOQueryCmd.Connection.RollbackTrans;
|
|
|
|
|
|
Application.MessageBox('ɾ<><C9BE><EFBFBD>쳣!', '<27><>ʾ', 0);
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
procedure TfrmWBSpecList.TBAddClick(Sender: TObject);
|
|
|
|
|
|
begin
|
|
|
|
|
|
try
|
|
|
|
|
|
frmWBSpecInPut := TfrmWBSpecInPut.Create(Application);
|
|
|
|
|
|
with frmWBSpecInPut do
|
|
|
|
|
|
begin
|
|
|
|
|
|
FWBSID := '';
|
|
|
|
|
|
FSTKName := self.FSTKName;
|
|
|
|
|
|
if ShowModal = 1 then
|
|
|
|
|
|
begin
|
|
|
|
|
|
Self.InitGrid();
|
|
|
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
finally
|
|
|
|
|
|
frmWBSpecInPut.Free;
|
|
|
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
procedure TfrmWBSpecList.TBEditClick(Sender: TObject);
|
|
|
|
|
|
begin
|
|
|
|
|
|
if CDS_Main.IsEmpty then
|
|
|
|
|
|
Exit;
|
|
|
|
|
|
|
|
|
|
|
|
try
|
|
|
|
|
|
frmWBSpecInPut := TfrmWBSpecInPut.Create(Application);
|
|
|
|
|
|
with frmWBSpecInPut do
|
|
|
|
|
|
begin
|
|
|
|
|
|
FWBSID := Trim(CDS_Main.fieldbyname('WBSID').AsString);
|
|
|
|
|
|
FSTKName := self.FSTKName;
|
|
|
|
|
|
if ShowModal = 1 then
|
|
|
|
|
|
begin
|
|
|
|
|
|
Self.InitGrid();
|
|
|
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
finally
|
|
|
|
|
|
frmWBSpecInPut.Free;
|
|
|
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
end.
|
|
|
|
|
|
|