D10myBiaoqi/T03贸易布匹检验/U_TradeClothDefectiveList.pas

920 lines
25 KiB
ObjectPascal
Raw Normal View History

2025-06-28 13:02:46 +08:00
unit U_TradeClothDefectiveList;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB,
cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, cxControls,
cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView,
cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, RM_Dataset, RM_System,
RM_Common, RM_Class, RM_GridReport, RM_e_Xls, Menus, MovePanel, cxTextEdit,
cxContainer, cxCurrencyEdit, BtnEdit, RM_e_main, RM_e_htm, RM_e_Graphic,
RM_e_Jpeg, RM_e_txt, RM_e_csv, Math, Clipbrd, cxPC, cxLookAndFeels,
cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu, dxSkinsCore,
dxSkinsDefaultPainters, dxDateRanges, U_BaseList, dxDateTimeWheelPicker,
RM_RichEdit, dxSkinBasic, 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, dxSkinOffice2016Colorful, dxSkinOffice2016Dark,
dxSkinOffice2019Black, dxSkinOffice2019Colorful, dxSkinOffice2019DarkGray,
dxSkinOffice2019White, dxSkinPumpkin, dxSkinSeven, dxSkinSevenClassic,
dxSkinSharp, dxSkinSharpPlus, dxSkinSilver, dxSkinSpringtime, dxSkinStardust,
dxSkinSummer2008, dxSkinTheAsphaltWorld, dxSkinTheBezier, dxSkinValentine,
dxSkinVisualStudio2013Blue, dxSkinVisualStudio2013Dark,
dxSkinVisualStudio2013Light, dxSkinVS2010, dxSkinWhiteprint, dxSkinWXI,
dxSkinXmas2008Blue, dxScrollbarAnnotations;
type
TfrmTradeClothDefectiveList = class(TfrmBaseList)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
GPM_1: TcxGridPopupMenu;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DS_1: TDataSource;
Label3: TLabel;
OrderNo: TEdit;
TBExport: TToolButton;
Order_Main: TClientDataSet;
BuyConNo: TEdit;
Label7: TLabel;
Label8: TLabel;
Label10: TLabel;
Label4: TLabel;
Grade: TComboBox;
Label5: TLabel;
C_Name: TEdit;
Label6: TLabel;
CIIOFlag: TComboBox;
Filler: TComboBox;
btnEdit: TToolButton;
TBZF: TToolButton;
btnJBQ: TToolButton;
RM1: TRMGridReport;
RMDB_1: TRMDBDataSet;
ADOQueryPrint: TADOQuery;
MovePanel2: TMovePanel;
C_Color: TEdit;
IsJYTime: TCheckBox;
lbl1: TLabel;
BCIOID: TEdit;
btnJYBG: TToolButton;
Label16: TLabel;
CIMachNo: TEdit;
Label20: TLabel;
C_Pattern: TEdit;
Label23: TLabel;
C_Code: TEdit;
Label1: TLabel;
FtyPCId: TEdit;
ToolButton1: TToolButton;
PM_1: TPopupMenu;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column22: TcxGridDBColumn;
v1Column21: TcxGridDBColumn;
v1Column32: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v1Column17: TcxGridDBColumn;
v1Column18: TcxGridDBColumn;
v1Column23: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
v1Column27: TcxGridDBColumn;
v1Column28: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v1Column20: TcxGridDBColumn;
v1Column14: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
v1Column42: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
Tv1Column7: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1MKXS: TcxGridDBColumn;
v1Column34: TcxGridDBColumn;
v1Column40: TcxGridDBColumn;
v1Column46: TcxGridDBColumn;
Tv1Column5: TcxGridDBColumn;
Tv1Column8: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
Panel6: TPanel;
Label31: TLabel;
LBCPAP: TLabel;
BTLP: TButton;
BTNP: TButton;
TCBNOR: TComboBox;
Tv1Column10: TcxGridDBColumn;
Tv1Column1: TcxGridDBColumn;
Tv1Column2: TcxGridDBColumn;
Tv1Column6: TcxGridDBColumn;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
ToolButton2: TToolButton;
RMRichObject1: TRMRichObject;
RMRichObject2: TRMRichObject;
Tv1Column9: TcxGridDBColumn;
cxTabControl1: TcxTabControl;
ToolButton3: TToolButton;
ToolButton4: TToolButton;
Tv1Column11: TcxGridDBColumn;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure btnEditClick(Sender: TObject);
procedure TBZFClick(Sender: TObject);
procedure btnJBQClick(Sender: TObject);
procedure OrderNoKeyPress(Sender: TObject; var Key: Char);
procedure BTLPClick(Sender: TObject);
procedure BTNPClick(Sender: TObject);
procedure TCBNORChange(Sender: TObject);
procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
procedure BuyConNoKeyPress(Sender: TObject; var Key: Char);
procedure CIIOFlagChange(Sender: TObject);
procedure GradeChange(Sender: TObject);
procedure KHConNOKeyPress(Sender: TObject; var Key: Char);
procedure RKOrdIDKeyPress(Sender: TObject; var Key: Char);
procedure btnJYBGClick(Sender: TObject);
procedure Tv1CustomDrawIndicatorCell(Sender: TcxGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; var ADone: Boolean);
procedure cxPageControl1Change(Sender: TObject);
procedure chkZFClick(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
private
DQdate: TDateTime;
FLeft, FTop: Integer;
CurrentPage, RecordsNumber: Integer;
procedure InitGrid();
function Savedata(): Boolean;
procedure SetStatus();
procedure PrintCKMDG(MRKOrdID: string);
{ Private declarations }
public
FFInt: Integer;
canshu1: string;
{ Public declarations }
end;
implementation
uses
U_DataLink, U_RTFun, U_TradeInspEdit, U_ZDYHelp, U_LabelPrint,
U_ProcessTypeEdit;
{$R *.dfm}
procedure TfrmTradeClothDefectiveList.SetStatus();
begin
// btnEdit.Enabled := False;
// TBZF.Enabled := False;
// btnHY.Enabled := False;
// btnJBQ.Enabled := False;
// btnJYBG.Enabled := False;
//
// btnEdit.Enabled := True;
// TBZF.Enabled := True;
// btnJBQ.Enabled := True;
// btnJYBG.Enabled := True;
end;
procedure TfrmTradeClothDefectiveList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
Action := caFree;
end;
procedure TfrmTradeClothDefectiveList.FormCreate(Sender: TObject);
begin
inherited;
cxgrid1.Align := alClient;
DQdate := SGetServerDate(ADOQueryTemp);
end;
procedure TfrmTradeClothDefectiveList.TBCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfrmTradeClothDefectiveList.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
Exit;
TcxGridToExcel(self.Caption, cxgrid1);
end;
procedure TfrmTradeClothDefectiveList.PrintCKMDG(MRKOrdID: string);
begin
end;
procedure TfrmTradeClothDefectiveList.InitGrid();
var
WSql: string;
begin
MovePanel2.Left := (self.Width - MovePanel2.Width) div 2;
MovePanel2.Visible := True;
MovePanel2.Refresh;
WSql := SGetFilters(Panel1, 1, 2);
if trim(WSql) <> '' then
begin
WSql := ' and ' + trim(WSql);
end;
case CxTabControl1.TabIndex of
0:
begin
ToolButton3.visible := True;
ToolButton4.visible := False;
WSql := WSql + 'and ISNULL(ProcessType,'<><CEB4><EFBFBD><EFBFBD>'')='<><CEB4><EFBFBD><EFBFBD>'' ';
end;
1:
begin
ToolButton4.visible := True;
ToolButton3.visible := False;
if IsJYTime.Checked then
begin
WSql := WSql + ' and Filltime>' + quotedstr(FormatDateTime('yyyy-MM-dd', BegDate.DateTime));
WSql := WSql + ' and Filltime<=' + quotedstr(FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1));
end;
WSql := WSql + ' and ISNULL(ProcessType,'<><CEB4><EFBFBD><EFBFBD>'') in (''<27><><EFBFBD><EFBFBD>'',''<27><><EFBFBD><EFBFBD>'') ';
end;
2:
begin
ToolButton3.visible := False;
ToolButton4.visible := False;
WSql := WSql + ' and Filltime>' + quotedstr(FormatDateTime('yyyy-MM-dd', BegDate.DateTime));
WSql := WSql + ' and Filltime<=' + quotedstr(FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1));
end;
end;
// if IsJYTime.Checked then
// begin
// WSql := WSql + ' and Filltime>' + quotedstr(FormatDateTime('yyyy-MM-dd', BegDate.DateTime));
// WSql := WSql + ' and Filltime<=' + quotedstr(FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1));
// end
// else
// begin
// if trim(WSql) <> '' then
// WSql := ' and 1=1' + trim(WSql)
// else
// WSql := WSql + ' and 1=2 ';
// end;
// if trim(WSql) = 'and 1=2' then
// Application.MessageBox('<27><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڻ<EFBFBD><DABB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 0);
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
sql.Add('exec P_Trade_Insp_Get_Page2 ');
sql.Add('@pageIndex=' + inttostr(CurrentPage));
sql.Add(',@pageSize=' + inttostr(RecordsNumber));
sql.Add(',@criteria= ' + quotedstr(WSql));
// showmessage(SQL.text);
Open;
end;
SCreateCDS(ADOQueryMain, Order_Main);
SInitCDSData(ADOQueryMain, Order_Main);
LBCPAP.Caption := inttostr(CurrentPage) + '/' + inttostr(ceil(Order_Main.FieldByName('TotalCount').AsInteger / RecordsNumber));
MovePanel2.Visible := false;
finally
ADOQueryMain.EnableControls;
MovePanel2.Visible := false;
TV1.DataController.Filter.Clear;
end;
end;
procedure TfrmTradeClothDefectiveList.TBRafreshClick(Sender: TObject);
begin
OrderNo.SetFocus;
CurrentPage := 1;
InitGrid();
end;
procedure TfrmTradeClothDefectiveList.FormShow(Sender: TObject);
begin
inherited;
canshu1 := self.fParameters1;
CurrentPage := 1;
RecordsNumber := 500;
ReadCxGrid(Trim(self.Caption) + 'Tv1', Tv1, <>׼<EFBFBD><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
EndDate.DateTime := SGetServerDate(ADOQueryTemp);
BegDate.DateTime := EndDate.DateTime;
// fsj := 'select distinct(Filler) name from Trade_Cloth_Inspect ';
// SInitComBoxBySql(ADOQueryCmd, Filler, False, fsj);
// Filler.ItemIndex := Filler.Items.IndexOf(trim(DName));
InitGrid();
SetStatus();
InitGrid();
end;
procedure TfrmTradeClothDefectiveList.Tv1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
FLeft := X;
FTop := Y;
end;
procedure TfrmTradeClothDefectiveList.btnEditClick(Sender: TObject);
begin
if Order_Main.IsEmpty then
exit;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from Trade_Cloth_IO where IOFlag=''<27><><EFBFBD><EFBFBD>'' and stkid=''' + Trim(Order_Main.fieldbyname('CIID').AsString) + '''');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
Order_Main.EnableControls;
Application.MessageBox('<27>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2>ܱ༭!', '<27><>ʾ', 0);
Exit;
end;
try
frmTradeInspEdit := TfrmTradeInspEdit.Create(Application);
with frmTradeInspEdit do
begin
CIID.Text := Trim(Self.Order_Main.fieldbyname('CIID').AsString);
if ShowModal = 1 then
begin
end;
end;
finally
frmTradeInspEdit.Free;
end;
end;
procedure TfrmTradeClothDefectiveList.TBZFClick(Sender: TObject);
var
MCIIDS: string;
begin
if Order_Main.Locate('ssel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
if Application.MessageBox(<><C8B7>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϻ<EFBFBD><CFBA><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2>ָܻ<DCBB><D6B8><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
Order_Main.DisableControls;
with Order_Main do
begin
First;
while not Eof do
begin
if Order_Main.FieldByName('SSel').AsBoolean = True then
begin
MCIIDS := MCIIDS + Trim(Order_Main.fieldbyname('CIID').AsString) + ',';
Order_Main.Delete;
end
else
Next;
end;
end;
Order_Main.EnableControls;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('insert into Trade_Need_Up(UOperation,UType,UDataId) values(''<27><><EFBFBD><EFBFBD>'',''<27><><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>'',' + quotedstr(MCIIDS) + ') ');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
Sql.Clear;
Sql.Add('exec P_Trade_Insp_Del ');
Sql.Add('@CIIDS=' + quotedstr(Trim(MCIIDS)));
Sql.Add(',@DCode=' + Quotedstr(DCode));
Sql.Add(',@DName=' + Quotedstr(DName));
Open;
end;
if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
begin
raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
end;
ADOQueryCmd.Connection.CommitTrans;
CurrentPage := 1;
InitGrid();
application.MessageBox(<><C9BE><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmTradeClothDefectiveList.btnJBQClick(Sender: TObject);
var
fPrintFile, FLabVolume: string;
begin
if Order_Main.IsEmpty then
Exit;
if Order_Main.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
Order_Main.DisableControls;
with Order_Main do
begin
First;
while not Eof do
begin
if Order_Main.FieldByName('SSel').AsBoolean = True then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update Trade_Cloth_Inspect Set PrtCount=PrtCount+1,PrtDate=getdate(),Prter=''' + Trim(DName) + '''');
sql.Add(' where CIID=''' + Trim(Order_Main.fieldbyname('CIID').AsString) + '''');
ExecSQL;
end;
with ADOQueryPrint do
begin
Close;
SQL.Clear;
sql.Add(' EXEC P_Trade_Insp_Prt_Lab ');
SQL.Add(' @CIID=''' + Trim(Order_Main.fieldbyname('CIID').AsString) + '''');
Open;
end;
if ADOQueryPrint.IsEmpty then
begin
application.MessageBox('<27><>ǩ<EFBFBD><C7A9><EFBFBD><EFBFBD>δ<EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
exit;
end;
if Trim(ADOQueryPrint.fieldbyname('Grade').AsString) = '<27><>Ʒ' then
FLabVolume := Trim(ADOQueryPrint.fieldbyname('LabVolume').AsString)
else
FLabVolume := '<27><>Ʒ<EFBFBD><C6B7>ǩ';
ExportFtErpFile(FLabVolume + '.rmf', ADOQueryTemp);
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + FLabVolume + '.rmf';
if FileExists(fPrintFile) then
begin
RM1.LoadFromFile(fPrintFile);
// if Trim(ADOQueryPrint.fieldbyname('LabVolume').AsString) <> '<27><>Ʒ<EFBFBD><C6B7>ǩ' then
// Rm1.DefaultCopies := 2
// else
Rm1.DefaultCopies := 1;
RM1.PrintReport;
end
else
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>' + fPrintFile), '<27><>ʾ', 0);
end;
end;
Next;
end;
end;
Order_Main.EnableControls;
end;
function TfrmTradeClothDefectiveList.Savedata(): Boolean;
var
maxno, LLID: string;
HXPS: Integer;
HXQty, HXMQty: Double;
begin
HXPS := 0;
HXQty := 0;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select Top 1 * from Contract_Cloth_LL where OrdSubId=''' + Trim(Order_Main.fieldbyname('SubId').AsString) + '''');
sql.Add(' and FirstName=''' + Trim(Order_Main.fieldbyname('AOrddefstr4').AsString) + '''');
Open;
end;
LLID := Trim(ADOQueryTemp.fieldbyname('LLID').AsString);
if Trim(LLID) = '' then
begin
Result := False;
Application.MessageBox(<><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>ļӹ<C4BC><D3B9><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
try
ADOQueryCmd.Connection.BeginTrans;
if GetLSNo(ADOQueryCmd, maxno, 'HX', 'Contract_Cloth_BefChkHX', 2, 1) = False then
begin
Result := False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
Exit;
end;
with Order_Main do
begin
First;
while not Eof do
begin
if Order_Main.FieldByName('SSel').AsBoolean = True then
begin
HXPS := HXPS + 1;
HXQty := HXQty + Order_Main.FieldByName('MJLen').Value;
end;
Next;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('');
Open;
end;
except
end;
end;
procedure TfrmTradeClothDefectiveList.OrderNoKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
CurrentPage := 1;
InitGrid();
end;
end;
procedure TfrmTradeClothDefectiveList.BTLPClick(Sender: TObject);
begin
if CurrentPage > 1 then
CurrentPage := CurrentPage - 1;
InitGrid();
end;
procedure TfrmTradeClothDefectiveList.BTNPClick(Sender: TObject);
begin
if CurrentPage < Order_Main.FieldByName('TotalCount').AsInteger / RecordsNumber then
CurrentPage := CurrentPage + 1;
InitGrid();
end;
procedure TfrmTradeClothDefectiveList.TCBNORChange(Sender: TObject);
begin
RecordsNumber := StrToInt(TCBNOR.Text);
CurrentPage := 1;
InitGrid();
end;
procedure TfrmTradeClothDefectiveList.ToolButton1Click(Sender: TObject);
begin
WriteCxGrid(Trim(self.Caption) + 'Tv1', Tv1, <>׼<EFBFBD><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmTradeClothDefectiveList.ToolButton2Click(Sender: TObject);
var
MStrsql, MStrIn: string;
begin
if Order_Main.IsEmpty then
Exit;
if Order_Main.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
if Application.MessageBox(<><C8B7>Ҫ<EFBFBD>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
MovePanel2.Visible := True;
MovePanel2.Refresh;
try
Order_Main.DisableControls;
with Order_Main do
begin
MStrsql := '';
First;
while not Eof do
begin
if Order_Main.FieldByName('SSel').AsBoolean then
begin
if MStrsql = '' then
MStrsql := Quotedstr(trim(Order_Main.FieldByName('CIID').AsString))
else
MStrsql := MStrsql + ',' + Quotedstr(trim(Order_Main.FieldByName('CIID').AsString));
end;
Next;
end;
end;
Order_Main.EnableControls;
MovePanel2.Visible := False;
except
MovePanel2.Visible := False;
Order_Main.EnableControls;
end;
if InputQuery('<27><><EFBFBD><EFBFBD>', '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', MStrIn) then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update Trade_Cloth_Inspect Set BatchNO=' + QuotedStr(MStrIn));
sql.Add(' where CIID in (' + MStrsql + ')');
sql.Add('Update Trade_Cloth_Stock Set BatchNO=' + QuotedStr(MStrIn));
sql.Add(' where CIID in (' + MStrsql + ')');
ExecSQL;
end;
end;
InitGrid();
end;
procedure TfrmTradeClothDefectiveList.ToolButton3Click(Sender: TObject);
var
MFFIDS: string;
begin
if Order_Main.IsEmpty then
exit;
if not Order_Main.Locate('SSel', True, []) then
begin
application.MessageBox('<27><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ');
Exit;
end;
//
MFFIDS := '';
with Order_Main do
begin
DisableControls;
while Order_Main.Locate('SSel', True, []) do
begin
MFFIDS := MFFIDS + ',' + Trim(Order_Main.fieldbyname('CIID').AsString);
Order_Main.Delete;
end;
EnableControls;
end;
try
frmProcessEdit := TfrmProcessEdit.Create(Application);
with frmProcessEdit do
begin
FFFIDS := MFFIDS;
if ShowModal = 1 then
begin
InitGrid();
end;
end;
finally
frmProcessEdit.Free;
end;
end;
procedure TfrmTradeClothDefectiveList.ToolButton4Click(Sender: TObject);
var
MStrsql: string;
begin
if Order_Main.IsEmpty then
Exit;
if Order_Main.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
if Application.MessageBox(<><C8B7>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
MovePanel2.Visible := True;
MovePanel2.Refresh;
try
Order_Main.DisableControls;
with Order_Main do
begin
MStrsql := '';
First;
while not Eof do
begin
if Order_Main.FieldByName('SSel').AsBoolean then
begin
if MStrsql = '' then
MStrsql := Quotedstr(trim(Order_Main.FieldByName('CIID').AsString))
else
MStrsql := MStrsql + ',' + Quotedstr(trim(Order_Main.FieldByName('CIID').AsString));
end;
Next;
end;
end;
Order_Main.EnableControls;
MovePanel2.Visible := False;
except
MovePanel2.Visible := False;
Order_Main.EnableControls;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update Trade_Cloth_Inspect Set ProcessType='<><CEB4><EFBFBD><EFBFBD>'' ');
sql.Add(' where CIID in (' + MStrsql + ')');
ExecSQL;
end;
InitGrid();
end;
procedure TfrmTradeClothDefectiveList.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
Clipboard.SetTextBuf(PChar(Trim(Order_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString)));
end;
procedure TfrmTradeClothDefectiveList.chkZFClick(Sender: TObject);
begin
inherited;
CurrentPage := 1;
SetStatus();
InitGrid();
end;
procedure TfrmTradeClothDefectiveList.BuyConNoKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
CurrentPage := 1;
InitGrid();
end;
end;
procedure TfrmTradeClothDefectiveList.cxPageControl1Change(Sender: TObject);
begin
CurrentPage := 1;
SetStatus();
InitGrid();
end;
procedure TfrmTradeClothDefectiveList.cxTabControl1Change(Sender: TObject);
begin
TBRafresh.click;
end;
procedure TfrmTradeClothDefectiveList.CIIOFlagChange(Sender: TObject);
begin
CurrentPage := 1;
InitGrid();
end;
procedure TfrmTradeClothDefectiveList.GradeChange(Sender: TObject);
begin
CurrentPage := 1;
InitGrid();
end;
procedure TfrmTradeClothDefectiveList.KHConNOKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
CurrentPage := 1;
InitGrid();
end;
end;
procedure TfrmTradeClothDefectiveList.N2Click(Sender: TObject);
begin
SelOKNoFiler(Tv1, True); //ȫѡ
end;
procedure TfrmTradeClothDefectiveList.N3Click(Sender: TObject);
begin
SelOKNoFiler(Tv1, False); //ȫ<><C8AB>
end;
procedure TfrmTradeClothDefectiveList.N4Click(Sender: TObject);
begin
Clipboard.SetTextBuf(PChar(Trim(Order_Main.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString)));
end;
procedure TfrmTradeClothDefectiveList.RKOrdIDKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
CurrentPage := 1;
InitGrid();
end;
end;
procedure TfrmTradeClothDefectiveList.btnJYBGClick(Sender: TObject);
var
WSql: string;
begin
if Order_Main.IsEmpty then
Exit;
WSql := '';
Order_Main.DisableControls;
with Order_Main do
begin
First;
while not Eof do
begin
if Order_Main.fieldbyname('SSel').AsBoolean then
begin
if WSql <> '' then
begin
WSql := WSql + ',' + Trim(Order_Main.fieldbyname('CIID').AsString);
end
else
begin
WSql := Trim(Order_Main.fieldbyname('CIID').AsString);
end;
end;
Next;
end;
end;
Order_Main.Locate('SSel', True, []);
Order_Main.EnableControls;
try
frmLabelPrint := TfrmLabelPrint.Create(Application);
with frmLabelPrint do
begin
FLMType := 'TradeInsp';
FFiltration1 := WSql;
if ShowModal = 1 then
begin
// Self.InitGrid();
end;
end;
finally
frmLabelPrint.Free;
end;
if Order_Main.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
end;
procedure TfrmTradeClothDefectiveList.Tv1CustomDrawIndicatorCell(Sender: TcxGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; var ADone: Boolean);
var
FValue: string;
FBounds: TRect;
begin
FBounds := AViewInfo.Bounds;
if (AViewInfo is TcxGridIndicatorRowItemViewInfo) then
begin
ACanvas.FillRect(FBounds);
ACanvas.DrawComplexFrame(FBounds, clBlack, clBlack, [bBottom, bLeft, bRight], 1);
FValue := IntToStr(TcxGridIndicatorRowItemViewInfo(AViewInfo).GridRecord.Index + 1);
InflateRect(FBounds, -3, -2); //Platform specific. May not work on Linux.
ACanvas.Font.Color := clBlack;
ACanvas.Brush.Style := bsClear;
ACanvas.DrawText(FValue, FBounds, cxAlignCenter or cxAlignTop);
ADone := True;
end;
end;
end.