D7gmYongjin/染整计划(DyeingFinishingPlan.dll)/U_YCLView.pas

296 lines
7.6 KiB
ObjectPascal
Raw Permalink Normal View History

2026-03-04 09:51:44 +08:00
unit U_YCLView;
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, cxCalendar, cxButtonEdit,
cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator,
cxDropDownEdit, Menus;
type
TfrmYCLView = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBClose: TToolButton;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
Panel1: TPanel;
ToolButton2: TToolButton;
ADOQueryMain: TADOQuery;
RM1: TRMGridReport;
RMDB_Main: TRMDBDataSet;
Label3: TLabel;
SPName: TEdit;
cxGridPopupMenu2: TcxGridPopupMenu;
DS_HZ: TDataSource;
CDS_HZ: TClientDataSet;
Label4: TLabel;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
v2Column6: TcxGridDBColumn;
v2Column11: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
ToolButton1: TToolButton;
v2Column2: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
v2Column4: TcxGridDBColumn;
ToolButton3: TToolButton;
ToolButton4: TToolButton;
v2Column5: TcxGridDBColumn;
v2Column7: TcxGridDBColumn;
SPXS: TComboBox;
Tv2Column1: TcxGridDBColumn;
Tv2Column2: TcxGridDBColumn;
Tv2Column3: TcxGridDBColumn;
ToolButton5: TToolButton;
Panel2: TPanel;
Label1: TLabel;
ComboBox1: TComboBox;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure SPNameChange(Sender: TObject);
procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure v2Column5PropertiesEditValueChanged(Sender: TObject);
procedure ToolButton5Click(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
private
{ Private declarations }
procedure InitGrid();
public
fDEFstr5: string;
end;
var
frmYCLView: TfrmYCLView;
implementation
uses
U_DataLink, U_RTFun, U_ZdyAttInputCP;
{$R *.dfm}
procedure TfrmYCLView.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
SQL.Clear;
sql.Add(' select * from CP_Info where DataType=''CP'' and ZFFlag=0 ');
Open;
end;
SCreateCDS20(ADOQueryMain, CDS_HZ);
SInitCDSData20(ADOQueryMain, CDS_HZ);
finally
ADOQueryMain.EnableControls;
end;
ToolButton2.Click;
end;
procedure TfrmYCLView.FormDestroy(Sender: TObject);
begin
frmYCLView := nil;
end;
procedure TfrmYCLView.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmYCLView.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(<><D4AD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>', Tv2, '<27>ͻ<EFBFBD><CDBB>Զ<EFBFBD><D4B6><EFBFBD>');
Close;
end;
procedure TfrmYCLView.FormShow(Sender: TObject);
begin
// ReadCxGrid('ԭ<><D4AD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>', Tv2, '<27>ͻ<EFBFBD><CDBB>Զ<EFBFBD><D4B6><EFBFBD>');
InitGrid();
end;
procedure TfrmYCLView.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmYCLView.ToolButton2Click(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, CDS_HZ);
SInitCDSData20(ADOQueryMain, CDS_HZ);
end;
end;
procedure TfrmYCLView.SPNameChange(Sender: TObject);
begin
ToolButton2.Click;
end;
procedure TfrmYCLView.Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
if CDS_HZ.IsEmpty then
Exit;
ModalResult := 1;
end;
procedure TfrmYCLView.ToolButton1Click(Sender: TObject);
begin
try
frmZdyAttInputCP := TfrmZdyAttInputCP.Create(Application);
with frmZdyAttInputCP do
begin
FCYID := '';
if ShowModal = 1 then
begin
TBRafresh.Click;
end;
end;
finally
frmZdyAttInputCP.Free;
end;
end;
procedure TfrmYCLView.ToolButton3Click(Sender: TObject);
begin
try
frmZdyAttInputCP := TfrmZdyAttInputCP.Create(Application);
with frmZdyAttInputCP do
begin
FCYID := Trim(Self.CDS_HZ.fieldbyname('CPID').AsString);
if ShowModal = 1 then
begin
TBRafresh.Click;
end;
end;
finally
frmZdyAttInputCP.Free;
end;
end;
procedure TfrmYCLView.ToolButton4Click(Sender: TObject);
begin
if CDS_HZ.IsEmpty then
Exit;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
if Trim(CDS_HZ.fieldbyname('CPID').AsString) <> '' then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' UPdate CP_Info Set ZFFlag=1,ZFTime=Getdate(),ZFPerson=''' + Trim(DName) + '''');
sql.Add(' where CPID=''' + Trim(CDS_HZ.fieldbyname('CPID').AsString) + '''');
ExecSQL;
end;
end;
CDS_HZ.Delete;
end;
procedure TfrmYCLView.v2Column5PropertiesEditValueChanged(Sender: TObject);
var
mvalue, FFieldName: string;
begin
mvalue := TcxCheckBox(Sender).EditValue;
FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName);
with ADOQueryCmd do
begin
Close;
sql.Clear;
if mvalue = 'False' then
begin
sql.Add('update CP_Info set ISQY=0 where CPID=' + quotedstr(Trim(CDS_HZ.fieldbyname('CPID').AsString)));
end
else
begin
sql.Add('update CP_Info set ISQY=1 where CPID=' + quotedstr(Trim(CDS_HZ.fieldbyname('CPID').AsString)));
end;
execsql;
end;
end;
procedure TfrmYCLView.ToolButton5Click(Sender: TObject);
begin
if CDS_HZ.IsEmpty then Exit;
if CDS_HZ.Locate('SSel',True,[])=False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
if Trim(ComboBox1.Text)='' then
begin
Application.MessageBox('<27><>ѡ<EFBFBD><D1A1>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if Application.MessageBox(<><C8B7>Ҫִ<D2AA>д˲<D0B4><CBB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
try
ADOQueryCmd.Connection.BeginTrans;
CDS_HZ.DisableControls;
with CDS_HZ do
begin
First;
while Locate('SSel',True,[])=True do
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate CP_Info Set QtyUnit='''+Trim(ComboBox1.Text)+'''');
sql.Add(' where CPID='''+Trim(CDS_HZ.fieldbyname('CPID').AsString)+'''');
ExecSQL;
end;
Edit;
FieldByName('SSel').Value:=False;
FieldByName('QtyUnit').Value:=Trim(ComboBox1.Text);
end;
end;
CDS_HZ.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
except
CDS_HZ.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!','<27><>ʾ',0);
end;
end;
procedure TfrmYCLView.N1Click(Sender: TObject);
begin
SelOKNoFilter(Tv2,True);
end;
procedure TfrmYCLView.N2Click(Sender: TObject);
begin
SelOKNoFilter(Tv2,False);
end;
end.