D7szChenfeng/布匹检验(FabricInspection.dll)/U_MarkingInspection.pas
DESKTOP-E401PHE\Administrator ccdaa90a0f 移交
2025-07-22 15:51:47 +08:00

1392 lines
36 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_MarkingInspection;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
cxDataStorage, cxEdit, DB, cxDBData, cxCalendar, cxGridLevel,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
cxControls, cxGridCustomView, cxGrid, RM_Common, RM_Class, RM_GridReport,
RM_System, RM_Dataset, ADODB, DBClient, cxGridCustomPopupMenu, cxGridPopupMenu,
ExtCtrls, ComCtrls, ToolWin, cxTextEdit, Buttons, cxSplitter, cxCheckBox,
MovePanel, IniFiles, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator,
dxSkinsCore, dxSkinsDefaultPainters, dxSkinscxPCPainter, 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, dxSkinPumpkin,
dxSkinSeven, dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus,
dxSkinSilver, dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008,
dxSkinTheAsphaltWorld, dxSkinValentine, dxSkinVS2010, dxSkinWhiteprint,
dxSkinXmas2008Blue;
type
TfrmMarkingInspection = class(TForm)
cxGridPopupMenu1: TcxGridPopupMenu;
DataSource1: TDataSource;
Order_MJ: TClientDataSet;
ADOCmd: TADOQuery;
RMDB_Main: TRMDBDataSet;
RM2: TRMGridReport;
DS_MJCD: TDataSource;
CDS_MJCD: TClientDataSet;
DS_MJID: TDataSource;
CDS_MJID: TClientDataSet;
ADOQueryPrint: TADOQuery;
ScrollBox1: TScrollBox;
SpeedButton13: TSpeedButton;
SpeedButton14: TSpeedButton;
SpeedButton15: TSpeedButton;
SpeedButton16: TSpeedButton;
SpeedButton17: TSpeedButton;
SpeedButton18: TSpeedButton;
SpeedButton21: TSpeedButton;
SpeedButton22: TSpeedButton;
SpeedButton23: TSpeedButton;
SpeedButton24: TSpeedButton;
SpeedButton25: TSpeedButton;
SpeedButton26: TSpeedButton;
SpeedButton29: TSpeedButton;
SpeedButton30: TSpeedButton;
SpeedButton31: TSpeedButton;
SpeedButton32: TSpeedButton;
SpeedButton33: TSpeedButton;
SpeedButton34: TSpeedButton;
SpeedButton37: TSpeedButton;
SpeedButton38: TSpeedButton;
SpeedButton39: TSpeedButton;
SpeedButton40: TSpeedButton;
SpeedButton41: TSpeedButton;
SpeedButton42: TSpeedButton;
cxGridPopupMenu2: TcxGridPopupMenu;
ADOQueryMainDSC: TADOQuery;
SpeedButton45: TSpeedButton;
SpeedButton46: TSpeedButton;
SpeedButton47: TSpeedButton;
SpeedButton48: TSpeedButton;
SpeedButton50: TSpeedButton;
SpeedButton51: TSpeedButton;
SpeedButton54: TSpeedButton;
SpeedButton55: TSpeedButton;
SpeedButton56: TSpeedButton;
SpeedButton57: TSpeedButton;
SpeedButton58: TSpeedButton;
SpeedButton59: TSpeedButton;
SpeedButton62: TSpeedButton;
SpeedButton63: TSpeedButton;
SpeedButton64: TSpeedButton;
SpeedButton65: TSpeedButton;
SpeedButton66: TSpeedButton;
SpeedButton67: TSpeedButton;
SpeedButton70: TSpeedButton;
SpeedButton71: TSpeedButton;
SpeedButton72: TSpeedButton;
SpeedButton73: TSpeedButton;
SpeedButton74: TSpeedButton;
SpeedButton75: TSpeedButton;
Panel2: TPanel;
Label9: TLabel;
Label4: TLabel;
MJGW: TEdit;
Label5: TLabel;
Label11: TLabel;
BTPrint: TButton;
Button5: TButton;
Edit3: TEdit;
Label10: TLabel;
Edit4: TEdit;
Label12: TLabel;
Panel3: TPanel;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
SpeedButton5: TSpeedButton;
SpeedButton6: TSpeedButton;
SpeedButton7: TSpeedButton;
SpeedButton8: TSpeedButton;
SpeedButton9: TSpeedButton;
SpeedButton10: TSpeedButton;
SpeedButton11: TSpeedButton;
SpeedButton12: TSpeedButton;
SpeedButton49: TSpeedButton;
Label26: TLabel;
Edit6: TEdit;
Label30: TLabel;
MJTare: TEdit;
Label31: TLabel;
Label32: TLabel;
MJNW: TEdit;
Label33: TLabel;
MovePanel1: TMovePanel;
Label17: TLabel;
Label18: TLabel;
Label20: TLabel;
Label7: TLabel;
Label8: TLabel;
Edit1: TEdit;
Button1: TButton;
Button4: TButton;
Edit2: TEdit;
CDQty: TEdit;
RadioGroup1: TRadioGroup;
Button2: TButton;
Panel7: TPanel;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
tv2CDType: TcxGridDBColumn;
tv2CDWZ: TcxGridDBColumn;
v2Column2: TcxGridDBColumn;
Tv2CDQty: TcxGridDBColumn;
Tv2CDReason: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
Panel8: TPanel;
OrdNote: TRichEdit;
Label34: TLabel;
ComboBox1: TComboBox;
SpeedButton19: TSpeedButton;
SpeedButton20: TSpeedButton;
SpeedButton27: TSpeedButton;
SpeedButton28: TSpeedButton;
SpeedButton35: TSpeedButton;
SpeedButton36: TSpeedButton;
SpeedButton43: TSpeedButton;
SpeedButton44: TSpeedButton;
SpeedButton52: TSpeedButton;
SpeedButton53: TSpeedButton;
SpeedButton60: TSpeedButton;
SpeedButton61: TSpeedButton;
SpeedButton68: TSpeedButton;
SpeedButton69: TSpeedButton;
SpeedButton76: TSpeedButton;
SpeedButton77: TSpeedButton;
SpeedButton78: TSpeedButton;
SpeedButton79: TSpeedButton;
SpeedButton80: TSpeedButton;
SpeedButton81: TSpeedButton;
SpeedButton82: TSpeedButton;
SpeedButton83: TSpeedButton;
Label36: TLabel;
Label38: TLabel;
RM3: TRMGridReport;
mjxh: TEdit;
ADOTmp: TADOQuery;
Panel5: TPanel;
Panel6: TPanel;
Label1: TLabel;
Label35: TLabel;
Label39: TLabel;
Scan: TEdit;
Edit7: TEdit;
Edit8: TEdit;
ToolBar1: TToolBar;
ToolButton1: TToolButton;
TBCD: TToolButton;
TBClose: TToolButton;
cxGrid3: TcxGrid;
Tv3: TcxGridDBTableView;
cxGridDBColumn1: TcxGridDBColumn;
v3Column1: TcxGridDBColumn;
v3Column2: TcxGridDBColumn;
v3Column4: TcxGridDBColumn;
v3Column5: TcxGridDBColumn;
v3Column3: TcxGridDBColumn;
cxGridLevel2: TcxGridLevel;
Label2: TLabel;
GangNo: TEdit;
MJXS: TEdit;
MJLen: TEdit;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure TBCDClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure BTPrintClick(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton12Click(Sender: TObject);
procedure SpeedButton13Click(Sender: TObject);
procedure cxGridDBColumn2PropertiesChange(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure SpeedButton49Click(Sender: TObject);
procedure ScanKeyPress(Sender: TObject; var Key: Char);
procedure Edit1Click(Sender: TObject);
procedure Edit2Change(Sender: TObject);
procedure Edit3Click(Sender: TObject);
procedure Edit4Click(Sender: TObject);
procedure Edit6Click(Sender: TObject);
procedure MJstr3KeyPress(Sender: TObject; var Key: Char);
procedure Button2Click(Sender: TObject);
procedure MJGWChange(Sender: TObject);
procedure ScanClick(Sender: TObject);
procedure Edit7Click(Sender: TObject);
procedure MJNWKeyPress(Sender: TObject; var Key: Char);
procedure FormCreate(Sender: TObject);
procedure Edit8Click(Sender: TObject);
procedure MJLenChange(Sender: TObject);
procedure Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
private
{ Private declarations }
FColumn, FFFMJID, FOperationStatus: string;
FAPID, FSPID, FMainId, FSubId, FMJCode, FMJName, FMJSpec, FMJMF, FMJKZ, FMJColor, FAPBatchNo, FCarNo: string; // <20><>Ʒ<EFBFBD><C6B7>Ϣ
FCDName: string; //<2F>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD>
isCommopen, IsJsMessage: boolean;
fxsType, fRollType: string;
procedure InitDefectOptions(); //ˢ<>´õ<C2B4>ѡ<EFBFBD><D1A1>
procedure InitCDGrid(); //ˢ<>´õ<C2B4><C3B5><EFBFBD>Ϣ
procedure InitInspectionRecord(); //ˢ<>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>Ϣ
function CheckData(CKType: string): Boolean; //У<><D0A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
function SaveData(): Boolean; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
procedure ScanOrder(); //ɨ<><EFBFBD><E8B6A9>
procedure ClearGlobal(MStatus: string); //<2F><><EFBFBD><EFBFBD>ȫ<EFBFBD><C8AB>ID
procedure PrintCKMDG(MRKOrdID: string); //<2F><>ӡ<EFBFBD><D3A1><EFBFBD>
procedure PrtData(FMJID: string); //<2F><>ӡ<EFBFBD><D3A1><EFBFBD><EFBFBD>ǩ
procedure QuantityConversion(); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
procedure OpenCom(DllName: string);
procedure CloseCom(DllName: string);
procedure On1201(var Message: Tmessage); message 1201;
procedure On1301(var Message: Tmessage); message 1301;
public
fmanage: string;
{ Public declarations }
end;
var
frmMarkingInspection: TfrmMarkingInspection;
newh, newh1: hwnd;
IniFile: TIniFile;
implementation
uses
U_DataLink, U_Fun, U_ZDYHelp, U_iniParam;
{$R *.dfm}
procedure TfrmMarkingInspection.QuantityConversion();
var
MLen, MNWet, MGWet, MPWet, MCC, XiShu, MGreyLen: Double;
begin
MLen := StrToFloatdef(trim(MJLen.Text), 0);
MNWet := StrToFloatdef(trim(MJNW.Text), 0);
MPWet := StrToFloatdef(trim(MJTare.Text), 0);
MGWet := StrToFloatdef(trim(MJGW.Text), 0);
MCC := StrToFloatdef(trim(MJXS.Text), 0);
if MCC > 0 then
begin
MGWet := StrToFloat(format('%.1f', [MLen * MCC]));
MNWet := MGWet - MPWet;
MJGW.Text := FloatToStr(MGWet);
MJNW.Text := FloatToStr(MNWet);
end;
MNWet := MGWet - MPWet;
MJNW.Text := FloatToStr(MNWet);
end;
function TfrmMarkingInspection.CheckData(CKType: string): Boolean;
var
mvalue: Double;
begin
try
if Trim(FSPID) = '' then
raise Exception.Create('<27><>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָʾ<D6B8><CABE><EFBFBD><EFBFBD>');
if Trim(CKType) = '<27>ύ' then
begin
if Trim(GangNo.Text) = '' then
raise Exception.Create('<27>׺Ų<D7BA><C5B2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>');
if Trim(MJGW.Text) <> '' then
begin
if TryStrToFloat(MJGW.Text, mvalue) = False then
raise Exception.Create('<27><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!');
if strtofloatdef(trim(MJGW.Text), 0) > 80 then
raise Exception.Create('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܴ<EFBFBD><DCB4><EFBFBD>80!');
end;
if strtofloatdef(trim(MJNW.Text), 0) < 0.00 then
raise Exception.Create('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><D0A1>0!');
if strtofloatdef(trim(MJLen.Text), 0) < 0.00 then
raise Exception.Create('<27><><EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD>С<EFBFBD><D0A1>0!');
if Trim(MJLen.Text) <> '' then
begin
if strtofloatdef(trim(MJLen.Text), 0) > 400 then
raise Exception.Create('<27><><EFBFBD>Ȳ<EFBFBD><C8B2>ܴ<EFBFBD><DCB4><EFBFBD>400!');
end;
if (strtofloatdef(trim(MJLen.Text), 0) = 0) and (strtofloatdef(trim(MJNW.Text), 0) = 0) then
raise Exception.Create('<27><><EFBFBD>Ⱥ<EFBFBD><C8BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD>Ϊ0!!');
end;
Result := True;
except
Result := false;
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmMarkingInspection.ClearGlobal(MStatus: string);
begin
if MStatus = <><C9A8><EFBFBD><EFBFBD><EFBFBD>̿<EFBFBD>' then
begin
FAPID := '';
FSPID := '';
FMainId := '';
FSubId := '';
FFFMJID := '';
FMJCode := '';
FMJName := '';
FMJSpec := '';
FMJMF := '';
FMJKZ := '';
FMJColor := '';
FAPBatchNo := '';
FCarNo := '';
MJXH.Text := '';
MJXs.Text := '';
MJGW.Text := '';
MJNW.Text := '';
MJLen.Text := '';
GangNo.Text := '';
end;
if MStatus = '<27>ύ' then
begin
MJLen.Text := '';
MJGW.Text := '';
MJNW.Text := '';
FOperationStatus := '';
FFFMJID := '';
FAPID := '';
end;
end;
procedure TfrmMarkingInspection.PrintCKMDG(MRKOrdID: string);
var
fPrintFile: string;
Txt, fImagePath: string;
Moudle: THandle;
Makebar: TMakebar;
Mixtext: TMixtext;
begin
with ADOQueryPrint do
begin
Close;
SQL.Clear;
sql.Add(' exec P_Print_RKMDGangNo ');
SQL.Add(' @RKOrdID=''' + Trim(MRKOrdID) + '''');
Open;
end;
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt := Trim(ADOQueryPrint.fieldbyname('RKOrdID').AsString);
fImagePath := ExtractFilePath(Application.ExeName) + 'image\temp.bmp';
if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then
CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil);
if FileExists(fImagePath) then
DeleteFile(fImagePath);
Makebar(pchar(Txt), Length(Txt), 3, 3, 0, PChar(fImagePath), 3);
except
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
exit;
end;
ExportFtErpFile('<27><EFBFBD><E9B2BC><EFBFBD>ֿ<EFBFBD><D6BF>뵥.rmf', ADOTmp);
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\<5C><EFBFBD><E9B2BC><EFBFBD>ֿ<EFBFBD><D6BF>뵥.rmf';
if FileExists(fPrintFile) then
begin
RMVariables['QRBARCODE'] := fImagePath;
RM2.LoadFromFile(fPrintFile);
Rm2.DefaultCopies := 1;
RM2.ShowReport;
end
else
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>' + fPrintFile), '<27><>ʾ', 0);
Exit;
end;
end;
procedure TfrmMarkingInspection.ScanOrder();
begin
with ADOTmp do
begin
Close;
sql.Clear;
sql.Add('select A.*,B.*,C.* ');
sql.Add(',maxRoll=1+isnull((select cast (max(mjxh) as int) from FinishedCloth_Inspect X ');
sql.Add(' where X.SPID=C.CRID and X.MJType =''<27><>Ʒ'' ),0)');
sql.Add('from Cloth_Main A ');
sql.Add('inner join Cloth_Sub B on A.MainId=B.MainId');
sql.Add('inner join CK_Cloth_CR C on C.ToSubId=B.SubId');
sql.Add('where C.CRFlag=''<27><><EFBFBD><EFBFBD>'' and C.Valid=''Y'' and C.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' and C.CKName=''<27><><EFBFBD><EFBFBD>ֿ<EFBFBD>'' ');
sql.Add('and C.CRID=''' + Trim(Scan.Text) + '''');
//ShowMessage(SQL.Text);
Open;
end;
if not ADOTmp.IsEmpty then
begin
FAPID := '';
FSPID := Trim(ADOTmp.fieldbyname('CRID').AsString);
FMainId := Trim(ADOTmp.fieldbyname('MainId').AsString);
FSubId := Trim(ADOTmp.fieldbyname('SubId').AsString);
FMJCode := Trim(ADOTmp.fieldbyname('C_Code').AsString);
FMJName := Trim(ADOTmp.fieldbyname('C_CodeName').AsString);
FMJSpec := Trim(ADOTmp.fieldbyname('C_Spec').AsString);
FMJMF := Trim(ADOTmp.fieldbyname('MF').AsString);
FMJKZ := Trim(ADOTmp.fieldbyname('KZ').AsString);
FMJColor := trim(ADOTmp.fieldbyname('C_Color').AsString);
MJXH.Text := Trim(ADOTmp.fieldbyname('maxRoll').AsString);
GangNo.Text := Trim(ADOTmp.fieldbyname('GangNo').AsString);
OrdNote.Text := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:' + Trim(ADOTmp.fieldbyname('ConNo').AsString) + #13;
OrdNote.Text := OrdNote.Text + '<27><><EFBFBD><EFBFBD>:' + FMJCode + #13;
OrdNote.Text := OrdNote.Text + 'Ʒ<><C6B7>:' + FMJName + #13;
OrdNote.Text := OrdNote.Text + '<27>ŷ<EFBFBD>:' + FMJMF + #13;
OrdNote.Text := OrdNote.Text + '<27><><EFBFBD><EFBFBD>:' + FMJKZ + #13;
OrdNote.Text := OrdNote.Text + '<27><>ɫ:' + FMJColor + #13;
OrdNote.Text := OrdNote.Text + '<27>ر<EFBFBD><D8B1><EFBFBD>ʾ:' + Trim(ADOTmp.fieldbyname('Note').AsString);
end
else
begin
ClearGlobal(<><C9A8>');
end;
InitInspectionRecord();
InitCDGrid();
Scan.Text := '';
end;
procedure TfrmMarkingInspection.CloseCom(DllName: string);
type
TMyFunc = function(sCommName: PAnsiChar): HWND; stdcall;
var
Tf1: TMyFunc;
Tp1: TFarProc;
Th1: Thandle;
begin
Th1 := LoadLibrary(Pchar(trim(DllName)));
if Th1 > 0 then
begin
try
Tp1 := GetProcAddress(Th1, 'CommClose');
if Tp1 <> nil then
begin
Tf1 := TMyFunc(Tp1);
newh1 := Tf1('Comm1');
end
else
begin
end;
finally
// FreeLibrary(Th1);
end;
end
else
begin
application.MessageBox(Pchar('<27>Ҳ<EFBFBD><D2B2><EFBFBD> ' + trim(DllName) + ' <20>ļ<EFBFBD><C4BC><EFBFBD>'), '<27><>ʾ');
end;
end;
procedure TfrmMarkingInspection.OpenCom(DllName: string);
type
TMyFunc = function(fhandle: hwnd; sCommName: PAnsiChar; IntTime: integer; IsMessage: integer): HWND; stdcall;
var
Tf: TMyFunc;
Tp: TFarProc;
Th: Thandle;
begin
// closeCom(FComFile);
Th := LoadLibrary(Pchar(trim(DllName)));
if Th > 0 then
begin
try
Tp := GetProcAddress(Th, 'CommOpen');
if Tp <> nil then
begin
Tf := TMyFunc(Tp);
newh := Tf(self.Handle, 'Comm1', 500, 1);
if newh < 1 then
begin
application.MessageBox(Pchar('<27>򿪴<EFBFBD><F2BFAAB4><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>'), '<27><>ʾ');
end
else
IsCommOpen := true;
end
else
begin
IsCommOpen := false;
end;
finally
// FreeLibrary(Th);
end;
end
else
begin
IsCommOpen := false;
application.MessageBox(Pchar('<27>Ҳ<EFBFBD><D2B2><EFBFBD> ' + trim(DllName) + ' <20>ļ<EFBFBD><C4BC><EFBFBD>'), '<27><>ʾ');
end;
end;
procedure TfrmMarkingInspection.FormDestroy(Sender: TObject);
begin
frmMarkingInspection := nil;
end;
procedure TfrmMarkingInspection.On1301(var Message: Tmessage);
var
i1, i2: integer;
unitname: string;
fdata: double;
begin
i1 := Message.WParam;
i2 := Message.LParam;
if IsJsMessage then
begin
if (trim(Edit7.Text) = '<27><>') then
begin
MJLen.Text := format('%.f', [i1 / 100000]);
if i2 = 0 then
Label9.Caption := 'M'
else
Label9.Caption := 'Y';
edit1.Text := format('%.1f', [i1 / 100000]);
end;
end;
end;
procedure TfrmMarkingInspection.On1201(var Message: Tmessage);
var
i1, i2: integer;
unitname: string;
fdata: double;
begin
i1 := Message.WParam;
i2 := Message.LParam;
if IsJsMessage then
begin
if trim(Edit7.Text) = '<27><>' then
begin
MJGW.Text := format('%.1f', [i1 / 100000]);
end;
end;
end;
procedure TfrmMarkingInspection.FormClose(Sender: TObject; var Action: TCloseAction);
begin
//DataLink_WFBProducttion.ADOLink.Connected:=False;
if isCommopen then
begin
closeCom(DZCDYDllName);
closeCom(MBDYDllName);
end;
Action := caFree;
end;
procedure TfrmMarkingInspection.InitCDGrid();
begin
with ADOTmp do
begin
Close;
SQL.Clear;
sql.Add('select * from FinishedCloth_Inspect_CD where MJID=' + quotedstr(Trim(FFFMJID)));
Open;
end;
SCreateCDS20(ADOTmp, CDS_MJCD);
SInitCDSData20(ADOTmp, CDS_MJCD);
end;
procedure TfrmMarkingInspection.InitInspectionRecord();
begin
with ADOTmp do
begin
Close;
SQL.Clear;
sql.Add('select A.*');
sql.Add('from FinishedCloth_Inspect A where MJCRType='<><CEB4><EFBFBD><EFBFBD>'' ');
sql.Add(' and Filler=''' + Trim(DName) + '''');
sql.Add(' and DATEDIFF(HH,Filltime,GETDATE())<5');
Open;
end;
SCreateCDS20(ADOTmp, CDS_MJID);
SInitCDSData20(ADOTmp, CDS_MJID);
end;
procedure TfrmMarkingInspection.TBCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfrmMarkingInspection.TBCDClick(Sender: TObject);
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'WFBCD';
flagname := '<27>õ<EFBFBD>';
fnote := True;
V1Note.Caption := <><D3A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
if ShowModal = 1 then
begin
Self.InitDefectOptions();
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmMarkingInspection.FormShow(Sender: TObject);
begin
InitDefectOptions();
InitCDGrid();
if IsINIFile() then
ReadINIFile()
else
WriteINIFile;
if trim(Edit7.Text) = '<27><>' then
IsJsMessage := true;
if trim(fmanage) <> '<27><>Ȩ<EFBFBD><C8A8>' then
begin
if trim(DZCDYDllName) <> '' then
OpenCom(DZCDYDllName);
if trim(MBDYDllName) <> '' then
OpenCom(MBDYDllName);
Edit7.Visible := true;
Label35.Visible := true;
end;
end;
procedure TfrmMarkingInspection.InitDefectOptions();
var
AA: array[0..100] of string;
i, j: Integer;
begin
with ADOTmp do
begin
Close;
sql.Clear;
sql.Add('select ZDYName from KH_Zdy where Type=''WFBCD'' order by ZDYNO ');
Open;
end;
if ADOTmp.IsEmpty then
begin
Application.MessageBox(<>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>õ㣡', '<27><>ʾ', 0);
Exit;
end;
with ADOTmp do
begin
First;
i := 0;
while not Eof do
begin
AA[i] := Trim(fieldbyname('ZDYName').AsString);
i := i + 1;
Next;
end;
end;
i := i - 1;
if i > 69 then
begin
i := 69;
end;
for j := 0 to i do
begin
with ScrollBox1 do
begin
TSpeedButton(Controls[j]).Visible := True;
TSpeedButton(Controls[j]).Hint := AA[j];
if Length(AA[j]) > 4 then
begin
TSpeedButton(Controls[j]).Caption := Copy(Trim(AA[j]), 1, 4) + #13 + Copy(Trim(AA[j]), 5, Length(AA[j]) - 4);
end
else
TSpeedButton(Controls[j]).Caption := AA[j];
end;
end;
end;
function TfrmMarkingInspection.SaveData(): Boolean;
var
maxno, FMJID, BZID, strsql: string;
FMJLen: Double;
begin
FMJID := '';
try
ADOCmd.Connection.BeginTrans;
///<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
with ADOCmd do
begin
Close;
sql.Clear;
SQL.Add('select * from FinishedCloth_Inspect where MJId=''' + Trim(FMJID) + '''');
Open;
end;
with ADOCmd do
begin
if Trim(FMJID) = '' then
begin
Append;
if GetLSNo(ADOTmp, maxno, Trim(SCXFlag), 'FinishedCloth_Inspect', 4, 1) = False then
begin
ADOCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><ECB3A3>', '<27><>ʾ', 0);
exit;
end;
end
else
begin
maxno := Trim(FMJID);
Edit;
end;
FieldByName('MainId').value := Trim(FMainId);
FieldByName('SubId').value := Trim(FSubId);
FieldByName('APId').value := Trim(FAPID);
FieldByName('SPID').value := Trim(FSPID);
FieldByName('APBatchNo').value := Trim(FAPBatchNo);
FieldByName('GangNo').value := Trim(GangNo.Text);
FieldByName('CarNo').value := Trim(FCarNo);
FieldByName('MJID').Value := Trim(maxno);
FieldByName('MJCRType').Value := <><CEB4><EFBFBD><EFBFBD>';
FieldByName('MJXH').Value := strtointdef(trim(MJXH.Text), 0);
//<2F><><EFBFBD><EFBFBD>
FieldByName('MJLen').Value := StrToFloatdef(trim(MJLen.Text), 0);
//Ƥ<><C6A4>
FieldByName('MJTare').Value := StrToFloatdef(trim(MJTare.Text), 0);
//ë<><C3AB>
FieldByName('MJGW').Value := StrToFloatdef(trim(MJGW.Text), 0);
//<2F><><EFBFBD><EFBFBD>
FieldByName('MJNW').Value := StrToFloatdef(trim(MJGW.Text), 0) - StrToFloatdef(trim(MJTare.Text), 0);
//ϵ<><CFB5>
FieldByName('MJXS').Value := StrToFloatdef(trim(MJXS.Text), 0);
if Trim(Edit3.Text) <> '' then
begin
FieldByName('MJType').Value := '<27><>Ʒ';
end;
if Trim(Edit4.Text) <> '' then
begin
FieldByName('MJType').Value := '<27><>Ʒ';
end;
if Trim(FMJID) = '' then
begin
FieldByName('Filler').Value := Trim(DName);
end
else
begin
FieldByName('Editer').Value := Trim(DName);
FieldByName('EditTime').Value := SGetServerDateTime(ADOTmp);
end;
FieldByName('JTType').Value := Trim(SCXFlag);
Post;
end;
// if FJHGZ = '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('update FinishedCloth_Inspect SET mjxh=1+isnull((select cast (max(mjxh) as int) from FinishedCloth_Inspect X ');
sql.Add('where X.subID=FinishedCloth_Inspect.subID and X.GangNo=FinishedCloth_Inspect.GangNo ');
sql.Add('and X.SPID=FinishedCloth_Inspect.SPID and X.MJID<>FinishedCloth_Inspect.MJID and X.MJType =''<27><>Ʒ''),0)');
sql.Add('where MJID=''' + Trim(maxno) + '''');
// ShowMessage(SQL.Text);
execsql;
end;
end;
//<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD>޸Ľ<DEB8><C4BD><EFBFBD>
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('select MJXH from FinishedCloth_Inspect');
sql.Add('where MJID=''' + Trim(maxno) + '''');
open;
if not IsEmpty then
begin
MJXH.Text := fieldbyname('mjxh').AsString;
end;
end;
FMJID := Trim(maxno);
FFFMJID := Trim(maxno);
////////////////////////<2F><><EFBFBD><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD>õ<EFBFBD><C3B5><EFBFBD>//////////////////////////////////////
with CDS_MJCD do
begin
First;
while not Eof do
begin
if Trim(CDS_MJCD.fieldbyname('MCID').AsString) = '' then
begin
if GetLSNo(ADOTmp, maxno, 'MC', 'FinishedCloth_Inspect_CD', 5, 1) = False then
begin
ADOCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
end
else
begin
maxno := Trim(CDS_MJCD.fieldbyname('MCID').AsString);
end;
with ADOCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from FinishedCloth_Inspect_CD ');
sql.Add(' where MCID=''' + Trim(maxno) + '''');
Open;
end;
with ADOCmd do
begin
if Trim(CDS_MJCD.fieldbyname('MCID').AsString) = '' then
Append
else
Edit;
FieldByName('MJId').Value := Trim(FMJID);
FieldByName('MCID').Value := Trim(maxno);
SSetSaveDataCDSNew(ADOCmd, Tv2, CDS_MJCD, 'FinishedCloth_Inspect_CD', 0);
FieldByName('KouFenType').Value := CDS_MJCD.fieldbyname('KouFenType').Value;
Post;
end;
CDS_MJCD.Edit;
CDS_MJCD.FieldByName('MCID').Value := Trim(maxno);
Next;
end;
end;
with ADOCmd do
begin
close;
sql.Clear;
sql.Add('update FinishedCloth_Inspect SET ');
sql.Add('CDList=cast((select CDName+CAST(CDQty as varchar)+''M;'' from FinishedCloth_Inspect_CD where FinishedCloth_Inspect_CD.MJID=FinishedCloth_Inspect.MJID for xml path('''')) as varchar(200))');
sql.Add('where MJID=''' + Trim(FMJID) + ''' ');
execsql;
end;
////////////////////////<2F><><EFBFBD><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD>õ<EFBFBD><C3B5><EFBFBD>//////////////////////////////////////
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2BCB0><EFBFBD><EFBFBD>
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('exec P_FinishedCloth_CRK @MJID=''' + trim(FMJID) + '''');
execsql;
end;
ADOCmd.Connection.CommitTrans;
Result := True;
except
Result := False;
ADOCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ', 0);
end;
end;
procedure TfrmMarkingInspection.BTPrintClick(Sender: TObject);
var
fPrintFile: string;
mvalue: Double;
i: Integer;
begin
Scan.SetFocus;
BTPrint.Enabled := False;
if CheckData('<27>ύ') = False then
begin
BTPrint.Enabled := True;
exit;
end;
if SaveData() then
begin
MJXH.Text := inttostr(strTointdef(trim(MJXH.Text), 0) + 1);
if Trim(Edit6.Text) = '<27><>' then
begin
PrtData(FFFMJID);
end;
end
else
begin
BTPrint.Enabled := True;
end;
InitInspectionRecord();
InitCDGrid();
ClearGlobal('<27>ύ');
MJLen.SetFocus;
Edit1Click(MJLen);
BTPrint.Enabled := True;
end;
procedure TfrmMarkingInspection.PrtData(FMJID: string);
var
fPrintFile: string;
Txt, fImagePath: string;
Moudle: THandle;
Makebar: TMakebar;
Mixtext: TMixtext;
begin
with ADOQueryPrint do
begin
Close;
SQL.Clear;
sql.Add(' EXEC P_Print_FinishedLab ');
SQL.Add(' @MJID=''' + Trim(FMJID) + '''');
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;
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt := Trim(ADOQueryPrint.fieldbyname('MJID').AsString);
fImagePath := ExtractFilePath(Application.ExeName) + 'image\temp.bmp';
if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then
CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil);
if FileExists(fImagePath) then
DeleteFile(fImagePath);
Makebar(pchar(Txt), Length(Txt), 3, 3, 0, PChar(fImagePath), 3);
except
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
exit;
end;
ExportFtErpFile(Trim(ADOQueryPrint.fieldbyname('LabName').AsString), ADOTmp);
if Trim(ADOQueryPrint.fieldbyname('LabName').AsString) <> '' then
begin
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' + Trim(ADOQueryPrint.fieldbyname('LabName').AsString)
end
else
begin
ExportFtErpFile(<>ó<EFBFBD>Ʒ<EFBFBD><C6B7>ǩ.rmf', ADOTmp);
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\ͨ<>ó<EFBFBD>Ʒ<EFBFBD><C6B7>ǩ.rmf';
end;
if FileExists(fPrintFile) then
begin
RMVariables['QRBARCODE'] := fImagePath;
RM2.LoadFromFile(fPrintFile);
Rm2.DefaultCopies := strtointdef(trim(ComboBox1.Text), 1);
RM2.PrintReport;
end
else
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>' + fPrintFile), '<27><>ʾ', 0);
end;
end;
procedure TfrmMarkingInspection.SpeedButton1Click(Sender: TObject);
var
fsj: string;
begin
fsj := Trim(TSpeedButton(Sender).Hint);
if Trim(fsj) = '' then
Exit;
fsj := Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text);
TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text := fsj + Trim(TSpeedButton(Sender).Caption);
TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll;
end;
procedure TfrmMarkingInspection.SpeedButton12Click(Sender: TObject);
var
fsj: string;
begin
fsj := Trim(TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text);
if Trim(fsj) = '' then
Exit;
TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).Text := Copy(fsj, 1, Length(fsj) - 1);
TEdit(FindComponent(Trim(TSpeedButton(Sender).Hint))).SelectAll;
end;
procedure TfrmMarkingInspection.SpeedButton13Click(Sender: TObject);
var
i: Integer;
begin
if CheckData('<27>õ<EFBFBD>') = False then
exit;
FCDName := Trim(TSpeedButton(Sender).Hint);
MovePanel1.Visible := True;
//<2F><>ʾ<EFBFBD><CABE><EFBFBD>ּ<EFBFBD><D6BC><EFBFBD>
Edit1.SetFocus;
Panel3.Visible := True;
with Panel3 do
begin
for i := 0 to ControlCount - 1 do
begin
if Controls[i] is TSpeedButton then
begin
TSpeedButton(Controls[i]).Hint := Trim(Edit1.Name);
end;
end;
end;
end;
procedure TfrmMarkingInspection.cxGridDBColumn2PropertiesChange(Sender: TObject);
var
fsj: string;
begin
fsj := Trim(Order_MJ.fieldbyname('SubId').AsString);
Order_MJ.DisableControls;
with Order_MJ do
begin
First;
while not Eof do
begin
if Trim(Order_MJ.fieldbyname('SubId').AsString) <> fsj then
begin
Edit;
FieldByName('SSel').Value := False;
end;
Next;
end;
end;
Order_MJ.EnableControls;
Order_MJ.Locate('SubId', fsj, []);
end;
procedure TfrmMarkingInspection.Button1Click(Sender: TObject);
var
mvalue: Double;
begin
{ if Trim(Edit1.Text)='' then
begin
Application.MessageBox('λ<>ò<EFBFBD><C3B2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
exit;
end; }
if Trim(Edit1.Text) <> '' then
begin
if Trim(Edit2.Text) <> '' then
begin
if StrToFloat(Edit2.Text) < StrToFloat(Edit1.Text) then
begin
Application.MessageBox('<27>õ<EFBFBD>λ<EFBFBD><CEBB>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
end;
end;
if CDQty.Text <> '' then
begin
if TryStrToFloat(CDQty.Text, mvalue) = False then
begin
Application.MessageBox('<27>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
end;
with CDS_MJCD do
begin
Append;
FieldByName('cdname').Value := Trim(FCDName);
FieldByName('CDbeg').Value := Trim(Edit1.Text);
FieldByName('CDEnd').Value := Trim(Edit2.Text);
FieldByName('KouFenQty').Value := 0;
if RadioGroup1.ItemIndex > -1 then
FieldByName('KouFenType').Value := RadioGroup1.Items.Strings[RadioGroup1.ItemIndex];
if RadioGroup1.ItemIndex > -1 then
begin
if RadioGroup1.ItemIndex < 3 then
begin
FieldByName('KouFenQty').Value := RadioGroup1.ItemIndex + 1;
end
else
begin
FieldByName('KouFenQty').Value := 4;
end;
end;
if Trim(FCDName) = '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
FieldByName('KouFenQty').Value := 0;
FieldByName('CDQty').Value := StrToFloatdef(trim(CDQty.Text), 0);
{if Trim(Edit2.Text)<>'' then
begin
FieldByName('CDQty').Value:=StrToFloat(Edit2.Text)-StrToFloat(Edit1.Text);
end else
begin
FieldByName('CDQty').Value:=0;
end; }
Post;
end;
Edit1.Text := '';
Edit2.Text := '';
CDQty.Text := '';
MovePanel1.Visible := False;
Panel3.Visible := False;
end;
procedure TfrmMarkingInspection.Button5Click(Sender: TObject);
var
fPrintFile: string;
i: Integer;
mvalue: Double;
begin
if CDS_MJID.IsEmpty then
Exit;
PrtData(CDS_MJID.fieldbyname('MJID').AsString);
end;
procedure TfrmMarkingInspection.SpeedButton49Click(Sender: TObject);
begin
Panel3.Visible := False;
end;
procedure TfrmMarkingInspection.ScanKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
if Pos('DC', Trim(Scan.Text)) > 0 then
begin
ClearGlobal(<><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָʾ<D6B8><CABE>');
FOperationStatus := '<27><><EFBFBD>̿<EFBFBD>';
ScanOrder();
end
else
begin
application.MessageBox('<27><>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָʾ<D6B8><CABE><EFBFBD><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
MJLen.SetFocus;
Edit1Click(MJLen);
Scan.Text := '';
end;
end;
procedure TfrmMarkingInspection.Edit1Click(Sender: TObject);
var
i: Integer;
begin
Panel3.Visible := True;
with Panel3 do
begin
for i := 0 to ControlCount - 1 do
begin
if Controls[i] is TSpeedButton then
begin
TSpeedButton(Controls[i]).Hint := Trim(TEdit(Sender).Name);
end;
end;
end;
end;
procedure TfrmMarkingInspection.Edit2Change(Sender: TObject);
var
mvalue: Double;
begin
if Trim(Edit1.Text) <> '' then
begin
if TryStrToFloat(Edit1.Text, mvalue) = False then
begin
Application.MessageBox('<27>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
end
else
begin
Exit;
end;
if Trim(Edit2.Text) <> '' then
begin
if TryStrToFloat(Edit2.Text, mvalue) = False then
begin
Application.MessageBox('<27>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
end
else
begin
Exit;
end;
CDQty.Text := FloatToStr(StrToFloat(Edit2.Text) - StrToFloat(Edit1.Text));
end;
procedure TfrmMarkingInspection.Edit3Click(Sender: TObject);
begin
if Trim(Edit3.Text) = '' then
begin
Edit3.Text := '<27><>';
Edit4.Text := '';
end
else
begin
Edit3.Text := '';
Edit4.Text := '<27><>';
end;
end;
procedure TfrmMarkingInspection.Edit4Click(Sender: TObject);
begin
if Trim(Edit4.Text) = '' then
begin
Edit4.Text := '<27><>';
Edit3.Text := '';
end
else
begin
Edit4.Text := '';
Edit3.Text := '<27><>';
end;
end;
procedure TfrmMarkingInspection.Edit6Click(Sender: TObject);
begin
if Trim(Edit6.Text) = '' then
begin
Edit6.Text := '<27><>';
end
else
begin
Edit6.Text := '';
end;
end;
procedure TfrmMarkingInspection.MJstr3KeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
Key := #0;
SelectNext(ActiveControl as TWinControl, True, True);
end;
end;
procedure TfrmMarkingInspection.Button2Click(Sender: TObject);
begin
RadioGroup1.ItemIndex := -1;
end;
procedure TfrmMarkingInspection.MJGWChange(Sender: TObject);
begin
QuantityConversion();
end;
procedure TfrmMarkingInspection.ScanClick(Sender: TObject);
var
i: Integer;
begin
Panel3.Visible := True;
with Panel3 do
begin
for i := 0 to ControlCount - 1 do
begin
if Controls[i] is TSpeedButton then
begin
TSpeedButton(Controls[i]).Hint := Trim(TEdit(Sender).Name);
end;
end;
end;
end;
procedure TfrmMarkingInspection.Edit7Click(Sender: TObject);
begin
if Trim(Edit7.Text) = '' then
begin
Edit7.Text := '<27><>';
end
else
begin
Edit7.Text := '';
end;
end;
procedure TfrmMarkingInspection.MJNWKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
BTPrint.Click;
end;
end;
procedure TfrmMarkingInspection.FormCreate(Sender: TObject);
begin
IsCommopen := false;
IsJsMessage := false;
end;
procedure TfrmMarkingInspection.Edit8Click(Sender: TObject);
begin
if Trim(Edit8.Text) = '' then
begin
Edit8.Text := '<27><>';
Button5.Visible := true;
end
else
begin
Edit8.Text := '';
Button5.Visible := false;
end;
end;
procedure TfrmMarkingInspection.MJLenChange(Sender: TObject);
begin
QuantityConversion();
end;
procedure TfrmMarkingInspection.Tv2CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
if CDS_MJCD.IsEmpty then
Exit;
if Trim(CDS_MJCD.fieldbyname('MCID').AsString) = '' then
begin
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
CDS_MJCD.Delete;
end;
end;
end.