D10DJkaimengwenshang/项目代码/wenshangkm/G04复核布匹检验/U_FhMachRollMain.pas

2954 lines
88 KiB
ObjectPascal
Raw Normal View History

2025-09-27 14:24:10 +08:00
unit U_FhMachRollMain;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
System.Classes, Vcl.Graphics,mmsystem,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, cxGraphics, cxControls, cxLookAndFeels,
cxLookAndFeelPainters, dxSkinsCore, dxSkinWXI, cxClasses, dxLayoutContainer,
dxLayoutControl, dxLayoutcxEditAdapters, cxContainer, cxEdit, Vcl.StdCtrls,
cxTextEdit, Vcl.ExtCtrls, dxLayoutControlAdapters, U_BaseList, Data.DB,
Data.Win.ADODB, Vcl.Buttons, Vcl.ComCtrls, Vcl.ToolWin, cxImage, cxDBEdit,
cxStyles, cxCustomData, cxFilter, cxData, cxDataStorage, cxNavigator,
dxDateRanges, dxScrollbarAnnotations, cxDBData, dxBarBuiltInMenu, cxPC,
cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView,
cxGridCustomView, cxGrid, cxMemo, cxRichEdit, U_frameBads,
Datasnap.DBClient, RM_Common, RM_Class, RM_GridReport,
cxCheckBox, cxMaskEdit, cxDropDownEdit, Vcl.Menus, cxButtonEdit, RM_Dataset,
cxGeometry, dxFramedControl, dxPanel, U_KeyBoard, cxGroupBox,
cxGridCustomPopupMenu, cxGridPopupMenu, MovePanel, RM_RichEdit, cxProgressBar,
FlatUtils, FlatBtns, cxCurrencyEdit, 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,
dxSkinsDefaultPainters, dxSkinValentine, dxSkinVisualStudio2013Blue,
dxSkinVisualStudio2013Dark, dxSkinVisualStudio2013Light, dxSkinVS2010,
dxSkinWhiteprint, dxSkinXmas2008Blue;
type
TfrmFhMachRollMain = class(TfrmBaseList)
dxLayoutControl_packGroup_Root: TdxLayoutGroup;
dxLayoutControl_pack: TdxLayoutControl;
Piece: TcxTextEdit;
Qty: TcxTextEdit;
FtyPCId: TcxTextEdit;
Color: TcxTextEdit;
ColorNo: TcxTextEdit;
CodeName: TcxTextEdit;
OrderNo: TcxTextEdit;
edtScan: TcxTextEdit;
Button_set: TButton;
BCIOID: TcxTextEdit;
dxLayoutGroup_scan: TdxLayoutGroup;
dxLayoutItem1: TdxLayoutItem;
dxLayoutItem2: TdxLayoutItem;
dxLayoutItem3: TdxLayoutItem;
dxLayoutGroup_plan: TdxLayoutGroup;
dxLayoutItem4: TdxLayoutItem;
dxLayoutItem5: TdxLayoutItem;
dxLayoutItem6: TdxLayoutItem;
dxLayoutGroup_plan_1: TdxLayoutGroup;
dxLayoutGroup_plan_2: TdxLayoutGroup;
dxLayoutItem7: TdxLayoutItem;
dxLayoutItem8: TdxLayoutItem;
dxLayoutItem9: TdxLayoutItem;
dxLayoutItem10: TdxLayoutItem;
dxLayoutItem11: TdxLayoutItem;
dxLayoutEmptySpaceItem1: TdxLayoutEmptySpaceItem;
InputLen: TcxTextEdit;
BTPrint: TButton;
Button_bad: TButton;
btnRK: TButton;
Edit_pieceOrder: TcxTextEdit;
Edit_fixLen: TcxTextEdit;
Tare: TcxTextEdit;
Coefficient: TcxTextEdit;
InputWeight: TcxTextEdit;
BatchNO: TcxTextEdit;
PieceNo: TcxTextEdit;
OutPutWeight: TcxTextEdit;
edtPacketNo: TcxTextEdit;
dxLayoutGroup_do: TdxLayoutGroup;
dxLayoutItem13: TdxLayoutItem;
dxLayoutItem_roll: TdxLayoutItem;
dxLayoutGroup_do1: TdxLayoutGroup;
dxLayoutGroup_do2: TdxLayoutGroup;
dxLayoutItem15: TdxLayoutItem;
dxLayoutItem16: TdxLayoutItem;
dxLayoutItem_outweight: TdxLayoutItem;
lblLenUnit: TdxLayoutLabeledItem;
dxLayoutItem18: TdxLayoutItem;
dxLayoutLabeledItem2: TdxLayoutLabeledItem;
dxLayoutItem_packno: TdxLayoutItem;
dxLayoutItem_rk: TdxLayoutItem;
dxLayoutItem21: TdxLayoutItem;
dxLayoutEmptySpaceItem3: TdxLayoutEmptySpaceItem;
dxLayoutAutoCreatedGroup1: TdxLayoutAutoCreatedGroup;
dxLayoutAutoCreatedGroup3: TdxLayoutAutoCreatedGroup;
dxLayoutAutoCreatedGroup5: TdxLayoutAutoCreatedGroup;
dxLayoutGroup1: TdxLayoutGroup;
dxLayoutItem_pieceorder: TdxLayoutItem;
dxLayoutItem_fixlen: TdxLayoutItem;
dxLayoutEmptySpaceItem5: TdxLayoutEmptySpaceItem;
dxLayoutItem24: TdxLayoutItem;
dxLayoutGroup2: TdxLayoutGroup;
cxDBImage1: TcxDBImage;
Panel_right: TPanel;
cxGrid3: TcxGrid;
Tv3: TcxGridDBTableView;
v3PieceNo: TcxGridDBColumn;
Tv3Yardage: TcxGridDBColumn;
Tv3Meter: TcxGridDBColumn;
v3NetWeight: TcxGridDBColumn;
v3GrossWeight: TcxGridDBColumn;
Tv3Grade: TcxGridDBColumn;
tv3CIID: TcxGridDBColumn;
Tv3BatchNO: TcxGridDBColumn;
Tv3PacketNo: TcxGridDBColumn;
cxGridLevel2: TcxGridLevel;
cxPageControl1: TcxPageControl;
cxTabSheet1: TcxTabSheet;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
tv2CDType: TcxGridDBColumn;
tv2CDWZ: TcxGridDBColumn;
v2Column2: TcxGridDBColumn;
Tv2CDQty: TcxGridDBColumn;
Tv2CDReason: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
v2Column4: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
<EFBFBD>: TcxTabSheet;
cxGrid1: TcxGrid;
TV1: TcxGridDBTableView;
cxGridDBColumn2: TcxGridDBColumn;
cxGridDBColumn3: TcxGridDBColumn;
cxGridDBColumn4: TcxGridDBColumn;
cxGridDBColumn5: TcxGridDBColumn;
cxGridDBColumn6: TcxGridDBColumn;
cxGridDBColumn7: TcxGridDBColumn;
cxGridDBColumn8: TcxGridDBColumn;
cxGridDBColumn9: TcxGridDBColumn;
cxGridLevel3: TcxGridLevel;
ToolBar2: TToolBar;
ToolButton3: TToolButton;
Trolldel: TToolButton;
Tedit: TToolButton;
ToolButton4: TToolButton;
ToolButton7: TToolButton;
ToolButton8: TToolButton;
dxLayoutItem_zhfield: TdxLayoutItem;
AOrdDefNote1: TcxRichEdit;
dxLayoutItem_pic: TdxLayoutItem;
dxLayoutAutoCreatedGroup2: TdxLayoutAutoCreatedGroup;
cds_params: TClientDataSet;
cds_paramsdabao: TStringField;
cds_paramspackRolls: TIntegerField;
cds_paramsrollNoMake: TStringField;
cds_paramsMinWeight: TIntegerField;
cds_paramsMaxWeight: TIntegerField;
cds_paramslblLenUnit: TStringField;
cds_paramsMinLen: TIntegerField;
cds_paramsmaxLen: TIntegerField;
cds_paramsweightRule: TIntegerField;
cds_paramschen: TStringField;
cds_paramsmabiao: TStringField;
cds_paramsmbunit: TStringField;
cds_paramsmplace: TIntegerField;
cds_paramsyplace: TIntegerField;
cds_paramskgplace: TIntegerField;
cds_paramslabNumber: TIntegerField;
CDS_2: TClientDataSet;
DS_2: TDataSource;
cds_1: TClientDataSet;
cds_3: TClientDataSet;
ds_3: TDataSource;
ds_1: TDataSource;
ADOQueryMain: TADOQuery;
cds_paramsoutPage: TStringField;
ADOQueryPrint: TADOQuery;
RM1: TRMGridReport;
grade: TcxComboBox;
dxLayoutItem_grade: TdxLayoutItem;
dxLayoutItem17: TdxLayoutItem;
btnUnRk: TButton;
Btn_rlBill: TButton;
dxLayoutItem_unrk: TdxLayoutItem;
dxLayoutItem_rkd: TdxLayoutItem;
Tv3FtyPCId: TcxGridDBColumn;
cds_paramsEndPieceNo: TIntegerField;
cds_paramsBeginPieceNo: TIntegerField;
cds_paramsFixedLength: TIntegerField;
cds_paramspacknoMake: TStringField;
cds_paramspieceOrder: TBooleanField;
lblRuleConversion: TcxComboBox;
dxLayoutItem14: TdxLayoutItem;
dxLayoutAutoCreatedGroup4: TdxLayoutAutoCreatedGroup;
cds_paramsLabVolume: TStringField;
cds_paramsLabPackage: TStringField;
dxLayoutItem_packnote: TdxLayoutItem;
packnote: TcxMemo;
RMDB_1: TRMDBDataSet;
TprintPack: TToolButton;
Tlog: TToolButton;
dxPanel_mid: TdxPanel;
cxGroupBox_keys: TcxGroupBox;
FrameKeyBoard1: TFrameKeyBoard;
frameBads1: TframeBads;
dxLayoutItem_Pattern: TdxLayoutItem;
C_Pattern: TcxTextEdit;
Tv2SubtractQty: TcxGridDBColumn;
TV1SubtractQty: TcxGridDBColumn;
Tv3SubtractQty: TcxGridDBColumn;
RuleYardstick: TcxTextEdit;
dxLayoutItem_RuleYardstick: TdxLayoutItem;
cds_paramsAddwetPresent: TFloatField;
cds_paramsAddLenPresent: TFloatField;
C_StyleNo: TcxTextEdit;
dxLayoutItem_StyleNo: TdxLayoutItem;
Tv3AddwetPresent: TcxGridDBColumn;
Tv3AddLenPresent: TcxGridDBColumn;
cxGridPopupMenu1: TcxGridPopupMenu;
MovePanel1: TMovePanel;
ADOQueryImage: TADOQuery;
DS_IMAGE: TDataSource;
cds_paramspackPrintPreview: TBooleanField;
RMRichObject1: TRMRichObject;
cds_paramspacklabNumber: TIntegerField;
cds_paramspackPostAction: TStringField;
packPostBtn: TButton;
dxLayoutItem_packpost: TdxLayoutItem;
customStrField1: TcxTextEdit;
dxLayoutItem_customStrField1: TdxLayoutItem;
dxLayoutItem_customStrField2: TdxLayoutItem;
customStrField2: TcxTextEdit;
dxLayoutItem_width: TdxLayoutItem;
dxLayoutItem_gram: TdxLayoutItem;
C_Width: TcxTextEdit;
C_GramWeight: TcxTextEdit;
dxLayoutItem_addlen: TdxLayoutItem;
dxLayoutItem_addwet: TdxLayoutItem;
Tv3addlen: TcxGridDBColumn;
Tv3addWet: TcxGridDBColumn;
addLen: TcxTextEdit;
addWet: TcxTextEdit;
bt_printmd: TButton;
dxLayoutItem_btprintmd: TdxLayoutItem;
TgridLiSet: TToolButton;
dxLayoutItem_presentLen: TdxLayoutItem;
dxLayoutItem_presentWeight: TdxLayoutItem;
presentLen: TcxTextEdit;
presentWeight: TcxTextEdit;
procedure FormCreate(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Button_badClick(Sender: TObject);
procedure frameBads1cxButton3Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure edtScanDblClick(Sender: TObject);
procedure edtScanKeyPress(Sender: TObject; var Key: Char);
procedure frameBads1cxCheckBox_readLenPropertiesChange(Sender: TObject);
procedure ToolButton8Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton_backClick(Sender: TObject);
procedure edtScanEnter(Sender: TObject);
procedure Edit_fixLenClick(Sender: TObject);
procedure BTPrintClick(Sender: TObject);
procedure ToolButton7Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure TrolldelClick(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure TeditClick(Sender: TObject);
procedure cxButton2Click(Sender: TObject);
procedure Tv3CustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
procedure Tv3FocusedRecordChanged(Sender: TcxCustomGridTableView;
APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord;
ANewItemRecordFocusingChanged: Boolean);
procedure Button_setClick(Sender: TObject);
procedure InputLenKeyPress(Sender: TObject; var Key: Char);
procedure InputLenPropertiesChange(Sender: TObject);
procedure btnRKClick(Sender: TObject);
procedure btnUnRkClick(Sender: TObject);
procedure Btn_rlBillClick(Sender: TObject);
procedure Edit_pieceOrderClick(Sender: TObject);
procedure TprintPackClick(Sender: TObject);
procedure TlogClick(Sender: TObject);
procedure FrameKeyBoard1SpeedButton_backClick(Sender: TObject);
procedure FrameKeyBoard1SpeedButton1Click(Sender: TObject);
procedure FrameKeyBoard1SpeedButton_ycClick(Sender: TObject);
procedure dxLayoutItem1CaptionClick(Sender: TObject);
procedure Tv2DblClick(Sender: TObject);
procedure lblRuleConversionPropertiesChange(Sender: TObject);
procedure packPostBtnClick(Sender: TObject);
procedure frameBads1CIFBegDblClick(Sender: TObject);
procedure frameBads1cxCheck_lenPropertiesChange(Sender: TObject);
procedure bt_printmdClick(Sender: TObject);
procedure dxLayoutControl_packDblClick(Sender: TObject);
private
FCIID, FOperationStatus, FCIFName, FWorkshop: string;
FBCIOID, FOrderNo, FMainId, FSubId, FPCId, FConNo, FConMId,fBuyConNo, FConSId: string;
FBatchNO, FLenUnit, FC_Code, FC_Name,FC_EName, FC_Spec, FC_Width,
FC_GramWeight: string;
FC_Color, FC_EColor, FC_ColorNo, FC_StyleNo, FC_Composition, FC_Pattern,
FC_CustPattern, FC_ColorDepth: string;
Faddwet, faddlen: double;
FFtyPCId, FGangNo, FRulePieceNo, FCDUnit: string;
FPieceNo: Integer;
fIsPack: string;
fIsCommopen: Boolean;
FPacketCIID: string;
fLabPackage, fLabVolume: string;
FPacketCount: Integer;
fAddwetVirtual: double;
fAddLenVirtual: double;
fTareType: string;
procedure setFocusCtrol(controlName: String);
procedure CIFEndChange(Sender: TObject);
function CheckData(CKType: string): Boolean;
procedure QuantityConversion();
procedure ClearGlobal();
procedure InitPlan(MSubID: string);
procedure SetUnit(MUnit: string);
procedure SetDdetails();
procedure SetINIFile();
procedure GetINIFile();
procedure InitCDGrid(MCIID: string);
procedure InitCDGridCX(MCIID: string);
procedure InitJYGrid();
procedure OpenCom(DllName: string);
procedure CloseCom(DllName: string);
function SaveData(): Boolean;
procedure PrtData(MCIID: string; againPring: Boolean = false);
procedure PrintBao(PPacketId: string; againPring: Boolean = false);
procedure InitJTM(MCIID: string);
procedure BadSpeedButtonClick(Sender: TObject);
procedure setFormCtrol();
procedure PrtMD(MInNo: string);
procedure On1201(var Message: Tmessage); message 1201; // <20><><EFBFBD>ӳ<EFBFBD>
procedure On1301(var Message: Tmessage); message 1301; // <20><><EFBFBD><EFBFBD>
procedure initEditPiece();
procedure GetPacketNo();
procedure getPlanImage(MSubID: string);
function deletePack(packId:string):boolean;
function checkPicecNo():boolean;
function getCurPieceNO(mCcid:String):string;
type
public
fmanage: string;
fFlileFlag: string;
end;
var
frmFhMachRollMain: TfrmFhMachRollMain;
newh, newh1: hwnd;
implementation
uses
U_DataLink, U_ControlData, U_ParamSet, U_RTFun, U_globalVar,
U_FormLayOutDesign, U_ZDYHelp,
U_iniParam, U_ProductListHelp, U_SysLogList, U_MdPrint;
{$R *.dfm}
procedure TfrmFhMachRollMain.Btn_rlBillClick(Sender: TObject);
begin
if cds_3.IsEmpty then
exit;
if Application.MessageBox(<><C8B7>Ҫ<EFBFBD><D2AA><EFBFBD>´<EFBFBD>ӡ<EFBFBD><D3A1><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
exit;
try
with ADOQueryBaseTemp do
begin
Close;
SQL.Clear;
SQL.Add(' select * from Trade_Cloth_IO A where IOFlag=''<27><><EFBFBD><EFBFBD>'' ');
SQL.Add(' and A.StkId=''' + trim(cds_3.fieldbyName('CIID')
.AsString) + '''');
Open;
end;
PrtMD(ADOQueryBaseTemp.fieldbyName('IONo').AsString);
except
Application.MessageBox('<27><><EFBFBD>´<EFBFBD>ӡʧ<D3A1><CAA7>!', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
end;
end;
procedure TfrmFhMachRollMain.BTPrintClick(Sender: TObject);
var
fPrintFile, MPacketId: string;
mvalue: double;
i: Integer;
begin
try
BTPrint.Enabled := false;
edtScan.SetFocus;
if trim(OrderNo.Text) = '' then
exit;
if trim(grade.Text) = '' then
begin
Application.MessageBox('<27>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!', '<27><>ʾ', 0);
exit;
end;
if CheckData('<27>ύ') = false then
exit;
if FCDUnit <> lblLenUnit.CaptionOptions.Hint then
begin
Application.MessageBox('<27><>λ<EFBFBD><CEBB><EFBFBD>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>!', '<27><>ʾ', 0);
exit;
end;
if SaveData() then
begin
InputLen.Text := '';
presentLen.Text:='';
presentWeight.Text:='';
if BTPrint.Caption = '<27>޸<EFBFBD><DEB8>ύ' then
begin
BTPrint.Caption := '<27><> <20><>';
cds_params.edit;
cds_params.fieldbyName('chen').value := '1';
cds_params.fieldbyName('mabiao').value := '1';
cds_params.Post;
edtPacketNo.Enabled:=true;
if fileexists(ExtractFilePath(Application.ExeName) + '<27>޸ijɹ<C4B3>.wav') then
playSound(pwidechar('<27>޸ijɹ<C4B3>.wav'),0,SND_FILENAME OR SND_ASYNC);
end
else
begin
if fileexists(ExtractFilePath(Application.ExeName) + '<27><>ȷ.wav') then
playSound(pwidechar('<27><>ȷ.wav'),0,SND_FILENAME OR SND_ASYNC);
end;
InputWeight.Text := '';
// Edit_fixLen.Text := '';
if (trim(Edit_pieceOrder.Text) = '<27><>') and
(strtointdef(trim(PieceNo.Text), 0) > 1) then
begin
PieceNo.Text := inttostr(strtointdef(PieceNo.Text, 0) - 1); // <20>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>
end
else if (trim(cds_params.fieldbyName('beginPieceNo').AsString)<>'') then
begin
if strtointdef(trim(PieceNo.Text), 0)<strtointdef(trim(cds_params.fieldbyName('endPieceNo').AsString),0) then
begin
PieceNo.Text := inttostr(strtointdef(trim(PieceNo.Text), 0) + 1); //
end
else
PieceNo.Text :=getCurPieceNO(FCIID); //
end
else if (trim(cds_params.fieldbyName('rollnoMake').AsString) = '<27>Զ<EFBFBD>')then // (strtointdef(PieceNo.Text, 0) > 0)
begin
PieceNo.Text := inttostr(strtointdef(trim(PieceNo.Text), 0) + 1); //
end
else
begin
if dxLayoutItem_roll.ActuallyVisible then
begin
PieceNo.Text := getCurPieceNO(FCIID); //
end
else
PieceNo.Text := '';
end;
OutPutWeight.Text := '';
// PieceNo.Text := inttostr(strtointdef(PieceNo.Text, 0) + 1); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if trim(cds_params.fieldbyName('outPage').AsString) = '<27><>' then
begin
PrtData(FCIID);
end;
if (trim(cds_params.fieldbyName('dabao').AsString) = '<27><>') then
begin
FPacketCount := FPacketCount + 1;
FPacketCIID := FPacketCIID + ',' + FCIID;
if (trim(cds_params.fieldbyName('packPostAction').AsString) = '<27>Զ<EFBFBD>') and (FPacketCount = cds_params.fieldbyName('packRolls').AsInteger) then
begin
if GetLSNo(ADOQueryBaseTemp, MPacketId, 'BI', 'Trade_Cloth_Inspect',
4, 1) = false then
begin
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ', 0);
exit;
end;
try
ADOQueryBaseCmd.Connection.BeginTrans;
with ADOQueryBaseCmd do
begin
Close;
SQL.Clear;
SQL.Add('Update Trade_Cloth_Inspect Set PacketTime=GETDATE() , PacketNo='
+ trim(edtPacketNo.Text) + ',PacketId=' +
QuotedStr(trim(MPacketId)) + ',PacketCode=' +
QuotedStr(trim(DCode)) + ',PacketName=' +
QuotedStr(trim(DName)));
SQL.Add('WHERE EXISTS(select X.RTValue from [dbo].[F_Tool_SplitString]('
+ QuotedStr(FPacketCIID) +
','','') X where Trade_Cloth_Inspect.CIID=X.RTValue ) ');
SQL.Add('Update Trade_Cloth_Stock Set PacketTime=GETDATE() , PacketNo='
+ trim(edtPacketNo.Text) + ',PacketId=' +
QuotedStr(trim(MPacketId)) + ',PacketCode=' +
QuotedStr(trim(DCode)) + ',PacketName=' +
QuotedStr(trim(DName)));
SQL.Add('WHERE EXISTS(select X.RTValue from [dbo].[F_Tool_SplitString]('
+ QuotedStr(FPacketCIID) +
','','') X where Trade_Cloth_Stock.STKID=X.RTValue ) ');
ExecSQL;
end;
if (cds_params.fieldbyName('packlabnumber').AsInteger>0) then
PrintBao(MPacketId);
edtPacketNo.Text := inttostr(strtoint(edtPacketNo.Text) + 1);
FPacketCIID := '';
FPacketCount := 0;
ADOQueryBaseCmd.Connection.CommitTrans;
except
ADOQueryBaseCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
end;
end;
InputLen.SetFocus;
setFocusCtrol(InputLen.Name);
FOperationStatus := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
InitJYGrid();
InitCDGrid('');
FCIID := '';
finally
BTPrint.Enabled := true;
end;
end;
procedure TfrmFhMachRollMain.bt_printmdClick(Sender: TObject);
var
WSql: string;
begin
if cds_3.IsEmpty then
Exit;
WSql := '';
cds_3.DisableControls;
with cds_3 do
begin
First;
while not Eof do
begin
if WSql <> '' then
begin
WSql := WSql + ',' + Trim(cds_3.fieldbyname('CIID').AsString);
end
else
begin
WSql := Trim(cds_3.fieldbyname('CIID').AsString);
end;
Next;
end;
end;
cds_3.EnableControls;
try
frmMdPrint := TfrmMdPrint.Create(Application);
with frmMdPrint do
begin
FLMType := '<27><><EFBFBD><EFBFBD><EFBFBD>뵥';
FFiltration1 := WSql;
FFiltration2 := WSql;
if ShowModal = 1 then
begin
// Self.InitGrid();
end;
end;
finally
frmMdPrint.Free;
end;
end;
procedure TfrmFhMachRollMain.Button_badClick(Sender: TObject);
begin
inherited;
cxPageControl1.ActivePageIndex := 0;
dxPanel_mid.Visible := not dxPanel_mid.Visible;
cxGroupBox_keys.Left := Panel_right.Left + 15;
end;
procedure TfrmFhMachRollMain.Button_setClick(Sender: TObject);
begin
if trim(BCIOID.Text)='' then
begin
exit;
end;
frmParamSet := TfrmParamSet.create(Self);
with frmParamSet do
begin
cds_params.Data := Self.cds_params.Data;
if ShowModal = 1 then
begin
Self.cds_params.Data := cds_params.Data;
setFormCtrol();
end;
free;
end;
SetINIFile();
if trim(fmanage) <> '<27><>Ȩ<EFBFBD><C8A8>' then
begin
// if (trim(DZCDYDllName) <> '') and not fIsCommopen then
// OpenCom(DZCDYDllName);
if (trim(MBDYDllName) <> '') and not fIsCommopen then
OpenCom(MBDYDllName);
// edtScan.SetFocus;
end;
end;
procedure TfrmFhMachRollMain.btnRKClick(Sender: TObject);
var
MINo, MStkIds: string;
begin
if cds_3.IsEmpty then
exit;
if Application.MessageBox('<27><>ȷ<EFBFBD><C8B7>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?', '<27><>ʾ<EFBFBD><CABE>Ϣ', 1) = 2 then
begin
exit;
end;
btnRK.Enabled := false;
// ˢ<><CBA2>δ<EFBFBD><CEB4><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD><C4BE><EFBFBD>Ϣ<EFBFBD><CFA2>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
with ADOQueryMain do
begin
Close;
SQL.Clear;
SQL.Add('select A.*');
SQL.Add('from Trade_Cloth_Inspect A where BCIOID=''' +
trim(FBCIOID) + '''');
SQL.Add('and CIIOFlag='<><CEB4><EFBFBD><EFBFBD>''');
SQL.Add('order by filltime desc');
Open;
end;
SCreateCDS(ADOQueryMain, cds_3);
SInitCDSData(ADOQueryMain, cds_3);
with cds_3 do
begin
DisableControls;
First;
while not eof do
begin
MStkIds := MStkIds + trim(cds_3.fieldbyName('CIID').AsString) + ',';
next;
end;
EnableControls;
end;
MStkIds := copy(MStkIds, 1, Length(MStkIds) - 1);
if GetLSNo(ADOQueryBaseCmd, MINo, '9', 'Trade_Cloth_IO', 4, 1) = false then
begin
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><E2B5A5>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
exit;
end;
ADOQueryBaseCmd.Connection.BeginTrans;
try
with ADOQueryBaseCmd do
begin
Close;
SQL.Clear;
SQL.Add('exec P_Trade_Cloth_In ');
SQL.Add('@StkIds=' + QuotedStr(trim(MStkIds)));
SQL.Add(',@IOTime=' + QuotedStr(FormatDateTime('yyyy-MM-dd',
SGetServerDate(ADOQueryBaseTemp))));
SQL.Add(',@IOType=' + QuotedStr('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'));
SQL.Add(',@IONO=' + QuotedStr(MINo));
SQL.Add(',@FillId=' + QuotedStr(DCode));
SQL.Add(',@Filler=' + QuotedStr(DName));
Open;
end;
if ADOQueryBaseCmd.fieldbyName('intReturn').AsInteger = -1 then
begin
raise Exception.create
(pchar(trim(ADOQueryBaseCmd.fieldbyName('ShowMsg').AsString)));
end;
ADOQueryBaseCmd.Connection.CommitTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
btnRK.Enabled := true;
except
btnRK.Enabled := true;
ADOQueryBaseCmd.Connection.RollbackTrans;
Application.MessageBox(pchar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˢ<EFBFBD><CBA2>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
InitJYGrid();
end;
procedure TfrmFhMachRollMain.btnUnRkClick(Sender: TObject);
var
MStkIds: string;
begin
if cds_3.IsEmpty then
exit;
if Application.MessageBox('<27><>ȷ<EFBFBD><C8B7>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?', '<27><>ʾ<EFBFBD><CABE>Ϣ', 1) = 2 then
begin
exit;
end;
btnUnRk.Enabled := false;
with cds_3 do
begin
DisableControls;
First;
while not eof do
begin
MStkIds := MStkIds + trim(cds_3.fieldbyName('CIID').AsString) + ',';
next;
end;
EnableControls;
end;
MStkIds := copy(MStkIds, 1, Length(MStkIds) - 1);
try
ADOQueryBaseCmd.Connection.BeginTrans;
with ADOQueryBaseCmd do
begin
Close;
SQL.Clear;
SQL.Add('exec P_Trade_Cloth_ReIn ');
SQL.Add('@StkIds=' + QuotedStr(trim(MStkIds)));
SQL.Add(',@IOIDS='''' ');
Open;
end;
if ADOQueryBaseCmd.fieldbyName('intReturn').AsInteger = -1 then
begin
raise Exception.create
(pchar(trim(ADOQueryBaseCmd.fieldbyName('ShowMsg').AsString)));
end;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
ADOQueryBaseCmd.Connection.CommitTrans;
btnUnRk.Enabled := true;
except
ADOQueryBaseCmd.Connection.RollbackTrans;
btnUnRk.Enabled := true;
Application.MessageBox(pchar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmFhMachRollMain.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
if fIsCommopen then
begin
CloseCom(DZCDYDllName);
CloseCom(MBDYDllName);
end;
Action := caFree;
end;
procedure TfrmFhMachRollMain.FormCreate(Sender: TObject);
begin
inherited;
fIsCommopen := false;
cds_params.Close;
cds_params.CreateDataSet;
Panel_right.Align := alClient;
frameBads1.CIFBeg.OnEnter:=edtScanEnter;
frameBads1.CIFEnd.OnEnter:=edtScanEnter;
frameBads1.CIFNumber.OnEnter:=edtScanEnter;
frameBads1.SubtractQty.OnEnter:=edtScanEnter;
frameBads1.CIFQty.OnEnter:=edtScanEnter;
end;
procedure TfrmFhMachRollMain.FormDestroy(Sender: TObject);
begin
inherited;
frmFhMachRollMain := nil;
end;
procedure TfrmFhMachRollMain.FormShow(Sender: TObject);
var
i: Integer;
begin
//inherited;
gIsCanDesign :=IsHasDesignRight(ADOQueryBaseTemp,PWideChar(dCode)) ;
gGridNativeSet:=true;
if gIsCanDesign then
begin
cxGridPopupMenu1.Grid := cxGrid3;
end;
TgridLiSet.Visible:= gIsCanDesign ;
InitDevCombobox(ADOQueryBaseTemp, grade, 'CPGRADE');
ReadCxGrid(trim(Self.Caption) + 'Tv1', TV1, gDllFileCaption);
ReadCxGrid(trim(Self.Caption) + 'Tv2', Tv2, gDllFileCaption);
ReadCxGrid(trim(Self.Caption) + 'Tv3', Tv3, gDllFileCaption);
// fDllFileName + '|' + Self.Name + '|' + dxLayoutControl_pack.Name+ '.ini'
readLayOut(dxLayoutControl_pack,ADOQueryBaseTemp,PWideChar( fDllFileName+'|'+self.name+'|'+dxLayoutControl_pack.Name+'.ini'));
frameBads1.fBadBtnSize := gBcSpeedSize;
frameBads1.InitBadPanel;
with frameBads1.cxScrollBox1 do
begin
for i := 0 to ControlCount - 1 do
begin
if Controls[i] is TSpeedButton then
begin
TSpeedButton(Controls[i]).OnClick := BadSpeedButtonClick;
end;
end;
end;
InitCDGrid(FCIID);
if IsINIFile() then
ReadINIFile()
else
WriteINIFile;
GetINIFile();
setFormCtrol();
if trim(fmanage) <> '<27><>Ȩ<EFBFBD><C8A8>' then
begin
if trim(DZCDYDllName) <> '' then
OpenCom(DZCDYDllName);
if trim(MBDYDllName) <> '' then
OpenCom(MBDYDllName);
// edtScan.SetFocus;
end;
if trim(fCanInputFs)='1' then
begin
cxGroupBox_keys.ClientHeight := round(cxGrid3.ClientHeight * 0.6) ;
frameKeyBoard1.SpeedButton10.Visible:=true;
end
else
begin
cxGroupBox_keys.ClientHeight := round(cxGrid3.ClientHeight * 0.55);
frameKeyBoard1.SpeedButton10.Visible:=false;
end;
end;
procedure TfrmFhMachRollMain.frameBads1CIFBegDblClick(Sender: TObject);
begin
inherited;
if strTofloatDef(trim(frameBads1.CIFBeg.text),0)=0 then
frameBads1.CIFBeg.text:=inputLen.Text;
end;
procedure TfrmFhMachRollMain.frameBads1cxButton3Click(Sender: TObject);
begin
inherited;
frameBads1.Visible := false;
end;
procedure TfrmFhMachRollMain.frameBads1cxCheckBox_readLenPropertiesChange
(Sender: TObject);
begin
inherited;
frameBads1.CIFBeg.Text := '';
// if trim(TcxTextEdit(Sender).Text) = '' then
// begin
// frameBads1.CIFBeg.Text := '';
// end
// else
// begin
// frameBads1.CIFBeg.Text := '';
// end;
end;
procedure TfrmFhMachRollMain.frameBads1cxCheck_lenPropertiesChange(
Sender: TObject);
begin
inherited;
if frameBads1.cxCheck_len.Checked and (trim(InputLen.Text)<>'') then
begin
frameBads1.CIFBeg.Text := trim(InputLen.Text);
frameBads1.CIFEnd.SetFocus;
end
else
begin
frameBads1.CIFBeg.Text := ''
end;
end;
procedure TfrmFhMachRollMain.FrameKeyBoard1SpeedButton1Click(Sender: TObject);
var
fsj: string;
mComponent: TComponent;
mkey: Char;
begin
fsj := trim(TSpeedButton(Sender).Hint);
if trim(fsj) = '' then
exit;
mComponent := FindComponent(trim(TSpeedButton(Sender).Hint));
if mComponent = nil then
mComponent := frameBads1.FindComponent(trim(TSpeedButton(Sender).Hint));
if mComponent = nil then
exit;
if TcxTextEdit(mComponent).Name = 'KuangHao' then
exit;
if (TcxTextEdit(mComponent).Name = 'edtScan') and
(trim(TSpeedButton(Sender).Caption) = '<27>س<EFBFBD>') then
begin
mkey := #13;
edtScanKeyPress(edtScan, mkey);
exit;
end;
fsj := trim(TcxTextEdit(mComponent).Text);
if mComponent is TcxCurrencyEdit then
begin
TcxCurrencyEdit(mComponent).text := fsj + trim(TSpeedButton(Sender).Caption);
TcxCurrencyEdit(mComponent).SelectAll;
end
else
begin
TcxTextEdit(mComponent).Text := fsj + trim(TSpeedButton(Sender).Caption);
TcxTextEdit(mComponent).SelectAll;
end;
end;
procedure TfrmFhMachRollMain.FrameKeyBoard1SpeedButton_backClick(Sender: TObject);
var
fsj: string;
mComponent: TComponent;
begin
mComponent := FindComponent(trim(TSpeedButton(Sender).Hint));
if mComponent = nil then
mComponent := frameBads1.FindComponent(trim(TSpeedButton(Sender).Hint));
if mComponent = nil then
exit;
fsj := trim(TcxTextEdit(mComponent).Text);
if trim(fsj) = '' then
exit;
TcxTextEdit(mComponent).Text := copy(fsj, 1, Length(fsj) - 1);
TcxTextEdit(mComponent).SelectAll;
end;
procedure TfrmFhMachRollMain.FrameKeyBoard1SpeedButton_ycClick(Sender: TObject);
begin
inherited;
cxGroupBox_keys.Visible := false;
end;
function TfrmFhMachRollMain.CheckData(CKType: string): Boolean;
var
mvalue: double;
mCurPieceNo:Integer;
begin
Result := false;
mCurPieceNo:=strtointdef(trim(Pieceno.Text),0);
try
if trim(FBCIOID) = '' then
raise Exception.create('<27><>ɨ<EFBFBD><C9A8><EFBFBD><EFBFBD><EFBFBD>̿<EFBFBD><CCBF><EFBFBD>');
if trim(CKType) = '<27>ύ' then
begin
if (cds_params.fieldbyName('BeginPieceNo').AsInteger>cds_params.fieldbyName('endPieceNo').AsInteger) then
begin
if (mCurPieceNo>0) and not ((mCurPieceNo<=cds_params.fieldbyName('BeginPieceNo').AsInteger) and (mCurPieceNo>=cds_params.fieldbyName('endPieceNo').AsInteger)) then
begin
Application.MessageBox('<27>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>õķ<C3B5>Χ<EFBFBD><CEA7>!','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
Exit;
end;
end;
if (cds_params.fieldbyName('BeginPieceNo').AsInteger<cds_params.fieldbyName('endPieceNo').AsInteger) then
begin
if (mCurPieceNo>0) and not ((mCurPieceNo>=cds_params.fieldbyName('BeginPieceNo').AsInteger) and (mCurPieceNo<=cds_params.fieldbyName('endPieceNo').AsInteger)) then
begin
Application.MessageBox('<27>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>õķ<C3B5>Χ<EFBFBD><CEA7>!','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
Exit;
end;
end;
if trim(cds_params.fieldbyName('dabao').AsString) = '<27><>' then
begin
if strtointdef(edtPacketNo.Text, 0) = 0 then
raise Exception.create('<27><><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>!');
if cds_params.fieldbyName('packRolls').AsInteger = 0 then
raise Exception.create('ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><CEB4><EFBFBD><EFBFBD>!');
end;
if (strtointdef(PieceNo.Text, 0) = 0) and
(trim(cds_params.fieldbyName('rollNoMake').AsString) = '<27>ֶ<EFBFBD>') then
raise Exception.create('<27><><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>!');
if trim(lblLenUnit.CaptionOptions.Hint) = '' then
raise Exception.create('<27><><EFBFBD>ȵ<EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!');
if trim(InputWeight.Text) <> '' then
begin
if TryStrToFloat(InputWeight.Text, mvalue) = false then
raise Exception.create('<27><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!');
if strtofloatdef(trim(InputWeight.Text), 0) < cds_params.fieldbyName
('minWeight').AsInteger then
raise Exception.create('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><D0A1>' + cds_params.fieldbyName('minWeight')
.AsString + '!');
if strtofloatdef(trim(InputWeight.Text), 0) > cds_params.fieldbyName
('maxWeight').AsInteger then
raise Exception.create('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܴ<EFBFBD><DCB4><EFBFBD>' + cds_params.fieldbyName('maxWeight')
.AsString + '!');
end;
if trim(InputLen.Text) <> '' then
begin
if TryStrToFloat(InputLen.Text, mvalue) = false then
raise Exception.create('<27><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!');
if strtofloatdef(trim(InputLen.Text), 0) < cds_params.fieldbyName
('minLen').AsInteger then
raise Exception.create('<27><><EFBFBD>Ȳ<EFBFBD><C8B2><EFBFBD>С<EFBFBD><D0A1>' + cds_params.fieldbyName('minLen')
.AsString + '<27><>!');
if strtofloatdef(trim(InputLen.Text), 0) > cds_params.fieldbyName
('maxLen').AsInteger then
raise Exception.create('<27><><EFBFBD>Ȳ<EFBFBD><C8B2>ܴ<EFBFBD><DCB4><EFBFBD>' + cds_params.fieldbyName('maxLen')
.AsString + '<27><>!');
end;
if (strtofloatdef(trim(InputLen.Text), 0) = 0) and
(strtofloatdef(trim(InputWeight.Text), 0) = 0) and
(strtofloatdef(trim(Edit_fixLen.Text), 0) = 0) then
raise Exception.create('<27><><EFBFBD>Ⱥ<EFBFBD><C8BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD>Ϊ0!!');
end;
Result := true;
except
Application.MessageBox(pchar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmFhMachRollMain.ClearGlobal();
begin
FBCIOID := '';
FOrderNo := '';
FConNo := '';
FConMId := '';
FConSId := '';
FMainId := '';
FSubId := '';
FPCId := '';
FC_CustPattern := '';
FC_ColorDepth := '';
FFtyPCId := '';
FGangNo := '';
FC_Code := '';
FC_Name := '';
FBatchNO := '';
FC_Spec := '';
FC_Color := '';
FC_ColorNo := '';
FC_EColor := '';
FC_StyleNo := '';
FC_Composition := '';
FC_Width := '';
FC_GramWeight := '';
FC_Pattern := '';
FCIID := '';
FWorkshop := '';
InputLen.Text := '';
Coefficient.Text := '';
AOrdDefNote1.Text := '';
Tare.Text := '';
InputWeight.Text := '';
FLenUnit := '';
BatchNO.Text := '';
Faddwet := 0;
faddlen := 0;
FPacketCIID := '';
FPacketCount := 0;
end;
procedure TfrmFhMachRollMain.QuantityConversion();
begin
// if trim(OrderNo.Text)='' then exit;
if cds_params.fieldbyName('weightRule').AsInteger = 0 then
// InputWeight ë<><C3AB> OutPutWeight <20><><EFBFBD><EFBFBD>
begin
if lblRuleConversion.Text <> '<27><><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>' then
begin
if lblRuleConversion.Text = '<27><><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>' then
begin
InputWeight.Text := floattostr(strtofloatdef(trim(InputLen.Text), 0) *
strtofloatdef(trim(Coefficient.Text), 0) +
strtofloatdef(trim(Tare.Text), 0));
end;
if lblRuleConversion.Text = <><C3AB>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>' then
begin
InputLen.Text := floattostr(strtofloatdef(trim(InputWeight.Text), 0) *
strtofloatdef(trim(Coefficient.Text), 0));
end;
if lblRuleConversion.Text = '<27><><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>' then
begin
InputLen.Text :=
floattostr((RoundFloat(strtofloatdef(trim(InputWeight.Text), 0),
1) - strtofloatdef(trim(Tare.Text), 0)) *
strtofloatdef(trim(Coefficient.Text), 0));
end;
end;
if strtofloatdef(trim(InputWeight.Text), 0) > 0 then
begin
OutPutWeight.Text :=
floattostr((strtofloatdef(trim(InputWeight.Text), 0) -
strtofloatdef(trim(Tare.Text), 0))); // <20><><EFBFBD><EFBFBD>
end;
end;
if cds_params.fieldbyName('weightRule').AsInteger = 1 then
// InputWeight <20><><EFBFBD><EFBFBD> OutPutWeight ë<><C3AB>
begin
if lblRuleConversion.Text <> '<27><><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>' then
begin
if lblRuleConversion.Text = '<27><><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>' then
begin
InputWeight.Text := floattostr(strtofloatdef(trim(InputLen.Text), 0) *
strtofloatdef(trim(Coefficient.Text), 0));
end;
if lblRuleConversion.Text = <><C3AB>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>' then
begin
InputLen.Text :=
floattostr((strtofloatdef(trim(InputWeight.Text), 0) +
strtofloatdef(trim(Tare.Text), 0)) *
strtofloatdef(trim(Coefficient.Text), 0));
end;
if lblRuleConversion.Text = '<27><><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>' then
begin
InputLen.Text :=
floattostr(RoundFloat(strtofloatdef(trim(InputWeight.Text), 0), 1) *
strtofloatdef(trim(Coefficient.Text), 0));
end;
end;
if strtofloatdef(trim(InputWeight.Text), 0) > 0 then
begin
OutPutWeight.Text :=
floattostr((strtofloatdef(trim(InputWeight.Text), 0) +
strtofloatdef(trim(Tare.Text), 0))); // ë<><C3AB>
end;
end;
end;
procedure TfrmFhMachRollMain.InitPlan(MSubID: string);
begin
with ADOQueryBaseTemp do
begin
Close;
SQL.Clear;
SQL.Add('EXEC P_Trade_Insp_Get_plan @SubID=''' + trim(MSubID) + '''');
Open;
if NOT IsEmpty then
begin
getPlanImage(trim(MSubID));
// InitImage(Trim(ADOTmp.fieldbyname('YFTPName').AsString));
// InitImageHX(Trim(ADOTmp.fieldbyname('HXSID').AsString));
FBCIOID := trim(MSubID);
FLenUnit := trim(ADOQueryBaseTemp.fieldbyName('ruleLenUnit').AsString);
if FLenUnit='' then
begin
FLenUnit:='M';
end;
fLabPackage := trim(ADOQueryBaseTemp.fieldbyName('LabPackage').AsString);
fLabVolume := trim(ADOQueryBaseTemp.fieldbyName('LabVolume').AsString);
if (FLenUnit = '') then
begin
ShowMessage('<27>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD><EFBFBD>װ<EFBFBD><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><CEB4><EFBFBD>ó<EFBFBD><C3B3>ȵ<EFBFBD>λ!');
end;
SetUnit(FLenUnit);
// <20>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>õij<C3B5><C4B3>ȵ<EFBFBD>λ <20><>û<EFBFBD><C3BB><EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>ֵ<EFBFBD>ͽ<EFBFBD><CDBD><EFBFBD>һ<EFBFBD><D2BB>
// if Trim(ADOTmp.fieldbyname('CDUnit').AsString) = '' then
FCDUnit := lblLenUnit.CaptionOptions.Hint;
// else
// FCDUnit := Trim(ADOTmp.fieldbyname('ordUnit').AsString);
FConMId := trim(fieldbyName('ConMId').AsString);
FConSId := trim(fieldbyName('ConSId').AsString);
FConNo := trim(fieldbyName('ConNo').AsString);
FOrderNo := trim(fieldbyName('OrderNo').AsString);
fBuyConNo:= trim(fieldbyName('BuyConNo').AsString);
FMainId := trim(fieldbyName('MainId').AsString);
FSubId := trim(fieldbyName('SubId').AsString);
// FPCId := Trim(ADOTmp.fieldbyname('ToPCId').AsString);
// FC_CustPattern := Trim(ADOTmp.fieldbyname('C_CustPattern').AsString);
// FC_ColorDepth := Trim(ADOTmp.fieldbyname('C_ColorDepth').AsString);
// FWorkshop := Trim(ADOTmp.fieldbyname('Workshop').AsString);
FC_StyleNo := trim(fieldbyName('C_StyleNo').AsString);
FC_Composition := trim(fieldbyName('C_Composition').AsString);
FC_Code := trim(fieldbyName('C_Code').AsString);
FC_Name := trim(fieldbyName('C_Name').AsString);
FC_EName := trim(fieldbyName('C_EName').AsString);
// FBatchNO := Trim(ADOTmp.fieldbyname('BatchNO').AsString);
FC_Spec := trim(fieldbyName('C_Spec').AsString);
FC_Color := trim(fieldbyName('C_Color').AsString);
FC_ColorNo := trim(fieldbyName('C_ColorNo').AsString);
FC_EColor := trim(fieldbyName('C_EColor').AsString);
FC_Width := trim(fieldbyName('C_Width').AsString);
FC_GramWeight := trim(fieldbyName('C_GramWeight').AsString);
C_width.Text:=FC_Width;
C_GramWeight.Text:= FC_GramWeight ;
FC_Pattern := trim(fieldbyName('C_Pattern').AsString);
C_Pattern.Text := trim(fieldbyName('C_Pattern').AsString);
FFtyPCId := trim(fieldbyName('FtyPCId').AsString);
FRulePieceNo := trim(fieldbyName('RulePieceNo').AsString);
//<2F><><EFBFBD><EFBFBD>
Faddwet := fieldbyName('RuleAddwet').AsFloat;
//<2F>ӳ<EFBFBD>
faddlen := fieldbyName('RuleAddLen').AsFloat;
addwet.text:=floatTostr( Faddwet );
addLen.text:=floatTostr(fAddLen);
fAddwetVirtual := fieldbyName('RuleAddwetVirtual').AsFloat;
fAddLenVirtual := fieldbyName('RuleAddLenVirtual').AsFloat;
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>
if (FRulePieceNo = '<27>ֶ<EFBFBD>') or (FRulePieceNo = '<27>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD>') then
begin
cds_params.edit;
cds_params.fieldbyName('rollNoMake').value := '<27>ֶ<EFBFBD>';
cds_params.Post;
dxLayoutItem_roll.Visible := true;
PieceNo.Text := '';
end;
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>
if (trim(fieldbyName('RulePackNo').AsString) = '<27>ֶ<EFBFBD>') or
(trim(fieldbyName('RulePackNo').AsString) = '<27>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD>') then
begin
cds_params.edit;
cds_params.fieldbyName('packNoMake').value := '<27>ֶ<EFBFBD>';
cds_params.Post;
dxLayoutItem_packno.Visible := true;
edtPacketNo.Text := '';
end;
// ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
cds_params.edit;
cds_params.fieldbyName('packRolls').value := fieldbyName('packRolls').AsInteger;
cds_params.fieldbyName('packlabnumber').value := fieldbyName('packlabnumber').AsInteger;
cds_params.fieldbyName('packPostAction').value :=trim(fieldbyName('packPostAction').AsString);
if (fieldbyName('packRolls').AsInteger > 0)and (trim(fieldbyName('RulePackNo').AsString)<>'') then
begin
cds_params.fieldbyName('dabao').value := '<27><>' ;
end
else
begin
cds_params.fieldbyName('dabao').value := '';
end;
if fieldbyName('DecimalY').AsInteger>0 then
cds_params.fieldbyName('Yplace').value := fieldbyName('DecimalY').AsInteger;
if fieldbyName('DecimalM').AsInteger>0 then
cds_params.fieldbyName('MPlace').value := fieldbyName('DecimalM').AsInteger;
if fieldbyName('DecimalKg').AsInteger>0 then
cds_params.fieldbyName('kgPlace').value := fieldbyName('DecimalKg').AsInteger;
//
cds_params.fieldbyName('outPage').value := '<27><>' ;
cds_params.Post;
//
BatchNO.Text := trim(fieldbyName('batchNo').AsString);
Coefficient.Text := trim(fieldbyName('Coefficient').AsString);
// ת<><D7AA>ϵ<EFBFBD><CFB5>
lblRuleConversion.ItemIndex := lblRuleConversion.Properties.Items.IndexOf
(fieldbyName('RuleConversion').AsString);
OrderNo.Text := FOrderNo;
CodeName.Text := FC_Name;
ColorNo.Text := FC_ColorNo;
Color.Text := FC_Color;
FtyPCId.Text := FFtyPCId;
BCIOID.Text := FBCIOID;
Piece.Text := trim(fieldbyName('ordPiece').AsString);
Qty.Text := trim(fieldbyName('ordQty').AsString) +
trim(fieldbyName('ordUnit').AsString);
//
Tare.Text := trim(fieldbyName('RuleLaterTare').AsString);
fTareType := '';
if fieldbyName('RuleYardstick').AsInteger > 0 then
RuleYardstick.Text := trim(fieldbyName('RuleYardstick').AsString)
else
RuleYardstick.Text := '100';
packnote.Lines.Clear;
packnote.Lines.Add('<27><>װҪ<D7B0><D2AA><EFBFBD><EFBFBD>');
packnote.Lines.Add(trim(fieldbyName('packnote').AsString));
packnote.Lines.Add('<27><>ע<EFBFBD><D7A2>');
packnote.Lines.Add(trim(fieldbyName('ordnote').AsString));
// <20><><EFBFBD><EFBFBD> dxLayoutItem_pieceorder
if fieldbyName('FixedLength').AsInteger > 0 then
begin
dxLayoutItem_fixlen.Visible := true;
// Edit_fixLen.Text := '<27><>';
Edit_fixLen.Text := trim(fieldbyName('FixedLength').AsString);
end
else
begin
dxLayoutItem_fixlen.Visible := false;
Edit_fixLen.Text := '';
end;
InputLen.SetFocus;
setFocusCtrol(InputLen.Name);
SetDdetails();
end
else
begin
// ClearGlobal();
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ');
end;
end;
InitJYGrid();
InitCDGrid(FCIID);
edtScan.Text := '';
// <20><>ʾ<EFBFBD><CABE>
setFormCtrol();
end;
procedure TfrmFhMachRollMain.InputLenKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
Key := #0;
SelectNext(ActiveControl as TWinControl, true, true);
end;
end;
procedure TfrmFhMachRollMain.InputLenPropertiesChange(Sender: TObject);
begin
// if StrToIntDef(trim(InputWeight.Text), 0) = 0 then
// begin
// exit;
// end;
QuantityConversion();
end;
procedure TfrmFhMachRollMain.lblRuleConversionPropertiesChange(Sender: TObject);
begin
inherited;
if lblRuleConversion.Text = '<27><><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>' then
begin
OutPutWeight.Text := '';
InputLen.Text := '';
InputWeight.Text := '';
end;
QuantityConversion();
end;
procedure TfrmFhMachRollMain.SetUnit(MUnit: string);
begin
// lblLenUnit.Caption := MUnit;
lblLenUnit.CaptionOptions.Hint:=MUnit;
lblLenUnit.CaptionOptions.Text := '[B][SIZE=16]' + MUnit + '[/SIZE][/B]';
// lblLenUnit1.Caption := MUnit;
frameBads1.lblLenUnit1.Caption := MUnit;
end;
procedure TfrmFhMachRollMain.SpeedButton1Click(Sender: TObject);
var
fsj: string;
mComponent: TComponent;
begin
fsj := trim(TSpeedButton(Sender).Hint);
if trim(fsj) = '' then
exit;
mComponent := FindComponent(trim(TSpeedButton(Sender).Hint));
if mComponent = nil then
mComponent := frameBads1.FindComponent(trim(TSpeedButton(Sender).Hint));
if mComponent = nil then
exit;
if TcxTextEdit(mComponent).Name = 'KuangHao' then
exit;
fsj := trim(TcxTextEdit(mComponent).Text);
TcxTextEdit(mComponent).Text := fsj + trim(TSpeedButton(Sender).Caption);
TcxTextEdit(mComponent).SelectAll;
end;
procedure TfrmFhMachRollMain.SpeedButton_backClick(Sender: TObject);
var
fsj: string;
mComponent: TComponent;
begin
mComponent := FindComponent(trim(TSpeedButton(Sender).Hint));
if mComponent = nil then
mComponent := frameBads1.FindComponent(trim(TSpeedButton(Sender).Hint));
if mComponent = nil then
exit;
fsj := trim(TcxTextEdit(mComponent).Text);
if trim(fsj) = '' then
exit;
TcxTextEdit(mComponent).Text := copy(fsj, 1, Length(fsj) - 1);
TcxTextEdit(mComponent).SelectAll;
end;
procedure TfrmFhMachRollMain.ToolButton3Click(Sender: TObject);
begin
if cds_3.IsEmpty then
exit;
PrtData(cds_3.fieldbyName('CIID').AsString);
end;
procedure TfrmFhMachRollMain.ToolButton4Click(Sender: TObject);
begin
try
frmZDYHelp := TfrmZDYHelp.create(Application);
with frmZDYHelp do
begin
ToolButton1.Visible := false;
DConString := Self.ADOQueryBaseCmd.Connection.ConnectionString;
flag := 'WFBCD';
flagname := '<27>õ<EFBFBD>';
fnote := true;
V1Note.Caption := <><D3A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
if ShowModal = 1 then
begin
Self.frameBads1.InitBadPanel();
end;
end;
finally
frmZDYHelp.free;
end;
end;
procedure TfrmFhMachRollMain.TrolldelClick(Sender: TObject);
var
mCiid:string;
begin
if cds_3.IsEmpty then
exit;
if Trim(cds_3.FieldByName('packetid').AsString)<>'' then
begin
if Application.MessageBox(pchar(<><C8B7>Ҫɾ<D2AA><C9BE>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'+Trim(cds_3.FieldByName('packetNo').AsString)+'<27><><EFBFBD>ľ<EFBFBD><C4BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'), '<27><>ʾ', 32 + 4) <> IDYES then
exit;
deletePack(Trim(cds_3.FieldByName('packetid').AsString)) ;
exit;
end
else
begin
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE>ѡ<EFBFBD><D1A1><EFBFBD>ľ<EFBFBD><C4BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
exit;
end;
ADOQueryBaseCmd.Connection.BeginTrans;
try
mCiid:= trim(cds_3.fieldbyName('CIID').AsString) ;
with ADOQueryBaseCmd do
begin
Close;
SQL.Clear;
SQL.Add('insert into Trade_Need_Up(UType,UOperation,UDataId,uoperator) values(''<27><><EFBFBD><EFBFBD>'',''<27><><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>'','
+ QuotedStr(mCiid) + ',' +
QuotedStr(DName) + ') ');
ExecSQL;
end;
with ADOQueryBaseCmd do
begin
Close;
SQL.Clear;
SQL.Add('exec P_Trade_Insp_Del ');
SQL.Add('@CIIDS=' + QuotedStr(mCiid));
SQL.Add(',@DCode=' + QuotedStr(DCode));
SQL.Add(',@DName=' + QuotedStr(DName));
Open;
end;
if ADOQueryBaseCmd.fieldbyName('intReturn').AsInteger = -1 then
begin
raise Exception.create
(pchar(trim(ADOQueryBaseCmd.fieldbyName('ShowMsg').AsString)));
end;
ADOQueryBaseCmd.Connection.CommitTrans;
if (FPacketCount>0) and (ansipos(mCiid,FPacketCIID)>0) then
begin
FPacketCount := FPacketCount - 1;
FPacketCIID := FPacketCIID.Replace(mCiid,'');
if FPacketCIID=',' then FPacketCIID:='';
end;
cds_3.Delete;
Application.MessageBox(<><C9BE><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
except
ADOQueryBaseCmd.Connection.RollbackTrans;
Application.MessageBox(pchar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmFhMachRollMain.Tv2DblClick(Sender: TObject);
begin
inherited;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD>ü<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>', '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ', 1) = 2 then
exit;
CDS_2.Delete;
end;
procedure TfrmFhMachRollMain.Tv3CustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
begin
if AViewInfo.GridRecord.Values[TcxGridDBTableView(Sender)
.GetColumnByFieldName('Grade').Index] = '<27><>Ʒ' then
ACanvas.Brush.Color := clRed;
end;
procedure TfrmFhMachRollMain.Tv3FocusedRecordChanged
(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord
: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean);
begin
inherited;
InitCDGridCX(cds_3.fieldbyName('CIID').AsString);
end;
procedure TfrmFhMachRollMain.TeditClick(Sender: TObject);
begin
if cds_3.IsEmpty then
exit;
InitJTM(cds_3.fieldbyName('CIID').AsString);
initEditPiece();
end;
procedure TfrmFhMachRollMain.TlogClick(Sender: TObject);
begin
frmSysLogList := TfrmSysLogList.create(Self);
with frmSysLogList do
begin
fModel := Self.Caption;
FMainId := trim(Self.FMainId);
ShowModal;
free;
end;
end;
procedure TfrmFhMachRollMain.ToolButton7Click(Sender: TObject);
begin
WriteCxGrid(trim(Self.Caption) + 'Tv1', TV1, gDllFileCaption);
WriteCxGrid(trim(Self.Caption) + 'Tv2', Tv2, gDllFileCaption);
WriteCxGrid(trim(Self.Caption) + 'Tv3', Tv3, gDllFileCaption);
if gIsCanDesign then
begin
saveLayOut(application,dxLayoutControl_pack, ADOQueryBaseCmd,PWideChar( fDllFileName + '|' + Self.Name + '|' + dxLayoutControl_pack.Name+ '.ini'));
end;
end;
procedure TfrmFhMachRollMain.ToolButton8Click(Sender: TObject);
begin
inherited;
Close;
end;
procedure TfrmFhMachRollMain.TprintPackClick(Sender: TObject);
begin
if cds_3.IsEmpty or (trim(cds_3.fieldbyName('PacketId').AsString) = '') then
exit;
PrintBao(trim(cds_3.fieldbyName('PacketId').AsString));
end;
procedure TfrmFhMachRollMain.setFocusCtrol(controlName: string);
var
i: Integer;
begin
with FrameKeyBoard1.dxPanel1 do
begin
for i := 0 to ControlCount - 1 do
begin
if Controls[i] is TSpeedButton then
begin
TSpeedButton(Controls[i]).Hint := trim(controlName);
if (trim(controlName) = 'edtScan') and
(TSpeedButton(Controls[i]).Name = 'SpeedButton_dot') then
begin
TSpeedButton(Controls[i]).Caption := '<27>س<EFBFBD>';
end
else if (TSpeedButton(Controls[i]).Name = 'SpeedButton_dot') then
begin
TSpeedButton(Controls[i]).Caption := '.';
end;
end;
end;
end;
cxGroupBox_keys.Left := Panel_right.Left + 5;
cxGroupBox_keys.Visible := true;
end;
procedure TfrmFhMachRollMain.CIFEndChange(Sender: TObject);
var
mvalue: double;
begin
if trim(frameBads1.CIFBeg.Text) <> '' then
begin
if TryStrToFloat(frameBads1.CIFBeg.Text, mvalue) = false then
begin
Application.MessageBox('<27>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
exit;
end;
end
else
begin
exit;
end;
if trim(frameBads1.CIFEnd.Text) <> '' then
begin
if TryStrToFloat(frameBads1.CIFEnd.Text, mvalue) = false then
begin
Application.MessageBox('<27>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
exit;
end;
end
else
begin
exit;
end;
frameBads1.CIFQty.Text := floattostr(StrToFloat(frameBads1.CIFEnd.Text) -
StrToFloat(frameBads1.CIFBeg.Text));
end;
procedure TfrmFhMachRollMain.SetDdetails();
begin
AOrdDefNote1.Text := '';
if fBuyConNo<>'' then
AOrdDefNote1.Text := AOrdDefNote1.Text + '<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>:' + fBuyConNo + #13;
AOrdDefNote1.Text := AOrdDefNote1.Text + '<27><><EFBFBD><EFBFBD>:' + FBCIOID + #13;
if FC_EName<>'' then
AOrdDefNote1.Text := AOrdDefNote1.Text + 'Ʒ<><C6B7>:' + FC_Name +'('+ FC_EName+')'+#13
else
AOrdDefNote1.Text := AOrdDefNote1.Text + 'Ʒ<><C6B7>:' + FC_Name + #13;
AOrdDefNote1.Text := AOrdDefNote1.Text + '<27>ŷ<EFBFBD>:' + FC_Width + ' <20><><EFBFBD><EFBFBD>:' +
FC_GramWeight + #13;
// AOrdDefNote1.Text := AOrdDefNote1.Text + '<27><><EFBFBD><EFBFBD>:' + FC_GramWeight + #13;
// AOrdDefNote1.Text := AOrdDefNote1.Text + '<27><>ɫ:' + FC_Color + ' ɫ<><C9AB>:' + FC_ColorNo + #13;
// AOrdDefNote1.Text := AOrdDefNote1.Text + 'ɫ<><C9AB>:' + FC_ColorNo + #13;
if FC_StyleNo<>'' then
AOrdDefNote1.Text := AOrdDefNote1.Text + '<27><><EFBFBD><EFBFBD>:' + FC_StyleNo + #13;
if abs(Faddwet) > 0 then
begin
AOrdDefNote1.Text := AOrdDefNote1.Text + '<27><><EFBFBD><EFBFBD>:' + FC_Pattern + ' <20><><EFBFBD><EFBFBD>:' +
floattostr(Faddwet) + #13;
end
else if abs(faddlen) > 0 then
begin
AOrdDefNote1.Text := AOrdDefNote1.Text + '<27><><EFBFBD><EFBFBD>:' + FC_Pattern + ' <20>ӳ<EFBFBD>:' +
floattostr(faddlen) + #13;
end
else
begin
if FC_Pattern<>'' then
AOrdDefNote1.Text := AOrdDefNote1.Text + '<27><><EFBFBD><EFBFBD>:' + FC_Pattern + #13;
end;
if FRulePieceNo<>'' then
AOrdDefNote1.Text := AOrdDefNote1.Text + '<27><><EFBFBD>Ź<EFBFBD><C5B9><EFBFBD>:' + FRulePieceNo + #13;
end;
procedure TfrmFhMachRollMain.SetINIFile();
begin
IsDZCDYDll := trim(cds_params.fieldbyName('chen').AsString);
IsMBDYDll := trim(cds_params.fieldbyName('mabiao').AsString);
IsMBDYDllUnit := trim(cds_params.fieldbyName('mbunit').AsString);
LabQty := trim(cds_params.fieldbyName('labNumber').AsString);
FMinLen := trim(cds_params.fieldbyName('minLen').AsString);
FMaxLen := trim(cds_params.fieldbyName('maxLen').AsString);
FMinWeight := trim(cds_params.fieldbyName('minweight').AsString);
FMaxWeight := trim(cds_params.fieldbyName('maxweight').AsString);
FMPlace := trim(cds_params.fieldbyName('mplace').AsString);
FYPlace := trim(cds_params.fieldbyName('yplace').AsString);
FKgPlace := trim(cds_params.fieldbyName('kgplace').AsString);
WriteINIFile();
end;
//
procedure TfrmFhMachRollMain.setFormCtrol();
begin
if cds_params.fieldbyName('dabao').AsString = '<27><>' then
begin
dxLayoutItem_packno.Visible := true;
Tv3PacketNo.Visible := true;
//
if ( trim(cds_params.fieldbyName('packPostAction').AsString)<>'<27>Զ<EFBFBD>') then
begin
dxLayoutItem_packpost.Visible:=true;
end
else
dxLayoutItem_packpost.Visible:=false;
//
if cds_3.IsEmpty then
edtPacketNo.Text := '1'
else
GetPacketNo();
end
else
begin
dxLayoutItem_packno.Visible := false;
Tv3PacketNo.Visible := false;
dxLayoutItem_packpost.Visible:=false;
edtPacketNo.Text := '';
end;
//
if cds_params.fieldbyName('weightRule').AsInteger = 0 then
dxLayoutItem_outweight.Caption := '[COLOR=Red][SIZE=18]<5D><><EFBFBD><EFBFBD>[/COLOR][/SIZE]'
else
dxLayoutItem_outweight.Caption := '[COLOR=Red][SIZE=18]ë<><C3AB>[/COLOR][/SIZE]';
if cds_params.fieldbyName('rollnoMake').AsString = '<27>ֶ<EFBFBD>' then
begin
// PieceNo.Enabled:=true;
PieceNo.Properties.ReadOnly := false;
if cds_params.fieldbyName('BeginPieceNo').AsInteger > 0 then
begin
PieceNo.Text := cds_params.fieldbyName('BeginPieceNo').AsString;
end;
// <20><><EFBFBD><EFBFBD>
if (cds_params.fieldbyName('EndPieceNo').AsInteger > 0) and
(cds_params.fieldbyName('BeginPieceNo').AsInteger > cds_params.fieldbyName
('EndPieceNo').AsInteger) then
begin
dxLayoutItem_pieceorder.Visible := true;
Edit_pieceOrder.Text := '<27><>';
end;
end
else
begin
PieceNo.Properties.ReadOnly := true;
// PieceNo.Enabled:=False;
end;
FrameKeyBoard1.SpeedButton_zdykey1.Caption := gZdyKey1;
// FrameKeyBoard1.SpeedButton_zdykey2.Caption := gZdyKey2;
FrameKeyBoard1.SpeedButton_zdykey2.Caption := gZdyKey2;
//<2F><><EFBFBD><EFBFBD>
presentlen.text:= trim(cds_params.fieldbyName('AddLenPresent').AsString);
presentWeight.text:= trim(cds_params.fieldbyName('AddwetPresent').AsString);
end;
procedure TfrmFhMachRollMain.GetINIFile();
begin
with cds_params do
begin
if IsEmpty then
Append
else
edit;
fieldbyName('chen').value := IsDZCDYDll;
fieldbyName('mabiao').value := IsMBDYDll;
fieldbyName('mbunit').value := IsMBDYDllUnit;
fieldbyName('MinLen').value := strtointdef(FMinLen, 0);
fieldbyName('MaxLen').value := strtointdef(FMaxLen, 100);
fieldbyName('MinWeight').value := strtointdef(FMinWeight, 0);
fieldbyName('MaxWeight').value := strtointdef(FMaxWeight, 50);
fieldbyName('MPlace').value := strtointdef(FMPlace, 1);
fieldbyName('YPlace').value := strtointdef(FYPlace, 1);
fieldbyName('KgPlace').value := strtointdef(FKgPlace, 1);
fieldbyName('labNumber').value := strtointdef(trim(LabQty), 1);
Post;
end;
end;
procedure TfrmFhMachRollMain.InitCDGrid(MCIID: string);
begin
cxPageControl1.ActivePageIndex := 0;
try
CDS_2.DisableControls;
with ADOQueryBaseTemp do
begin
Close;
SQL.Clear;
SQL.Add('select * from Trade_Cloth_Inspect_Flaw where CIID=' + QuotedStr(trim(MCIID)));
Open;
end;
SCreateCDS(ADOQueryBaseTemp, CDS_2);
SInitCDSData(ADOQueryBaseTemp, CDS_2);
finally
CDS_2.EnableControls ;
end;
end;
procedure TfrmFhMachRollMain.InitCDGridCX(MCIID: string);
begin
cxPageControl1.ActivePageIndex := 1;
with ADOQueryBaseTemp do
begin
Close;
SQL.Clear;
SQL.Add('select * from Trade_Cloth_Inspect_Flaw where CIID=' +
QuotedStr(trim(MCIID)));
Open;
end;
SCreateCDS(ADOQueryBaseTemp, cds_1);
SInitCDSData(ADOQueryBaseTemp, cds_1);
end;
procedure TfrmFhMachRollMain.InitJYGrid();
var
MNetWeight, MJYLen: double;
begin
try
cds_3.DisableControls;
with ADOQueryMain do
begin
Close;
SQL.Clear;
SQL.Add('select A.*');
SQL.Add('from Trade_Cloth_Inspect A where BCIOID=''' +
trim(FBCIOID) + '''');
SQL.Add('order by filltime desc');
Open;
end;
SCreateCDS(ADOQueryMain, cds_3);
SInitCDSData(ADOQueryMain, cds_3);
// if not cds_3.IsEmpty then
// begin
// cds_3.First;
// PieceNo.Text := trim(cds_3.FieldByName('PieceNo').AsString); //
// end
// else
// PieceNo.Text := '';
finally
cds_3.EnableControls;
end;
end;
procedure TfrmFhMachRollMain.OpenCom(DllName: string);
type
TMyFunc = function(fhandle: hwnd; sCommName: PAnsiChar; IntTime: Integer;
IsMessage: Integer): hwnd; stdcall;
var
Tf: TMyFunc;
Tp: TFarProc;
Th: Thandle;
begin
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
fIsCommopen := true;
end
else
begin
fIsCommopen := false;
end;
finally
// FreeLibrary(Th);
end;
end
else
begin
fIsCommopen := false;
Application.MessageBox(pchar('<27>Ҳ<EFBFBD><D2B2><EFBFBD> ' + trim(DllName) + ' <20>ļ<EFBFBD><C4BC><EFBFBD>'), '<27><>ʾ');
end;
end;
procedure TfrmFhMachRollMain.packPostBtnClick(Sender: TObject);
var
MPacketId:string;
begin
if (trim(cds_params.fieldbyName('dabao').AsString) <> '<27><>') then exit;
try
packPostBtn.Enabled:=false;
if FPacketCount=0 then
begin
Application.MessageBox('<27><>δ<EFBFBD><CEB4><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD><C4BE><EFBFBD>', '<27><>ʾ', 0);
exit;
end;
if FPacketCount >0 then
begin
if GetLSNo(ADOQueryBaseTemp, MPacketId, 'BI', 'Trade_Cloth_Inspect',
4, 1) = false then
begin
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ', 0);
exit;
end;
try
ADOQueryBaseCmd.Connection.BeginTrans;
with ADOQueryBaseCmd do
begin
Close;
SQL.Clear;
SQL.Add('Update Trade_Cloth_Inspect Set PacketTime=GETDATE() , PacketNo='
+ trim(edtPacketNo.Text) + ',PacketId=' +
QuotedStr(trim(MPacketId)) + ',PacketCode=' +
QuotedStr(trim(DCode)) + ',PacketName=' +
QuotedStr(trim(DName)));
SQL.Add('WHERE EXISTS(select X.RTValue from [dbo].[F_Tool_SplitString]('
+ QuotedStr(FPacketCIID) +
','','') X where Trade_Cloth_Inspect.CIID=X.RTValue ) ');
SQL.Add('Update Trade_Cloth_Stock Set PacketTime=GETDATE() , PacketNo='
+ trim(edtPacketNo.Text) + ',PacketId=' +
QuotedStr(trim(MPacketId)) + ',PacketCode=' +
QuotedStr(trim(DCode)) + ',PacketName=' +
QuotedStr(trim(DName)));
SQL.Add('WHERE EXISTS(select X.RTValue from [dbo].[F_Tool_SplitString]('
+ QuotedStr(FPacketCIID) +
','','') X where Trade_Cloth_Stock.STKID=X.RTValue ) ');
ExecSQL;
end;
if (cds_params.fieldbyName('packlabnumber').AsInteger>0) then
PrintBao(MPacketId);
edtPacketNo.Text := inttostr(strtoint(edtPacketNo.Text) + 1);
FPacketCIID := '';
FPacketCount := 0;
ADOQueryBaseCmd.Connection.CommitTrans;
//
if fileexists(ExtractFilePath(Application.ExeName) + '<27><>ȷ.wav') then
playSound(pwidechar('<27><>ȷ.wav'),0,SND_FILENAME OR SND_ASYNC);
except
ADOQueryBaseCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
finally
InitJYGrid();
packPostBtn.Enabled:=true;
end;
end;
procedure TfrmFhMachRollMain.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 TfrmFhMachRollMain.cxButton2Click(Sender: TObject);
begin
inherited;
if FCIFName = '' then
begin
frameBads1.dxPanel1.Visible := false;
exit;
end;
with CDS_2 do
begin
Append;
// if RadioGroup1.ItemIndex = 5 then
// FieldByName('CIFName').Value := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' + Trim(FCIFName)
// else if RadioGroup1.ItemIndex = 4 then
// FieldByName('CIFName').Value := '<27><>ƥ' + Trim(FCIFName)
// else
fieldbyName('CIFName').value := trim(FCIFName);
fieldbyName('CIFbeg').value := trim(frameBads1.CIFBeg.Text);
fieldbyName('CIFEnd').value := trim(frameBads1.CIFEnd.Text);
fieldbyName('CIFNumber').value :=
strtointdef(trim(frameBads1.CIFNumber.Text), 0);
fieldbyName('CIFPoints').value := 0;
if frameBads1.RadioGroup1.ItemIndex > -1 then
begin
if frameBads1.RadioGroup1.ItemIndex < 3 then
begin
fieldbyName('CIFPoints').value := frameBads1.RadioGroup1.ItemIndex + 1;
end
else
begin
fieldbyName('CIFPoints').value := 4;
end;
end;
fieldbyName('CIFQty').value :=
strtofloatdef(trim(frameBads1.CIFQty.Text), 0);
fieldbyName('SubtractQty').value :=
strtofloatdef(trim(frameBads1.SubtractQty.Text), 0);
fieldbyName('IsSubtract').value := frameBads1.IsSubtract.Checked;
Post;
end;
frameBads1.CIFBeg.Text := '';
frameBads1.CIFEnd.Text := '';
frameBads1.CIFQty.Text := '';
frameBads1.dxPanel1.Visible := false;
cxPageControl1.ActivePageIndex := 0;
end;
procedure TfrmFhMachRollMain.dxLayoutControl_packDblClick(Sender: TObject);
begin
if gIsCanDesign then
layoutDesign(TdxLayoutControl(Sender),ADOQueryBaseCmd,PWideChar(dcode));
end;
procedure TfrmFhMachRollMain.dxLayoutItem1CaptionClick(Sender: TObject);
var
mkey: Char;
begin
inherited;
frmProductListHelp := TfrmProductListHelp.create(Self);
with frmProductListHelp do
begin
fType := '10';
if ShowModal = 1 then
begin
edtScan.Text := trim(order_main.fieldbyName('Subid').AsString);
mkey := #13;
edtScanKeyPress(edtScan, mkey);
end;
free;
end;
end;
procedure TfrmFhMachRollMain.Edit_fixLenClick(Sender: TObject);
begin
inherited;
// if trim(Edit_fixLen.Text) = '' then
// begin
// Edit_fixLen.Text := '<27><>';
// end
// else
// begin
// Edit_fixLen.Text := '';
// end;
end;
procedure TfrmFhMachRollMain.Edit_pieceOrderClick(Sender: TObject);
begin
inherited;
if trim(Edit_pieceOrder.Text) = '' then
begin
Edit_pieceOrder.Text := '<27><>';
end
else
begin
Edit_pieceOrder.Text := '';
end;
end;
procedure TfrmFhMachRollMain.edtScanDblClick(Sender: TObject);
begin
inherited;
edtScan.Text := '';
end;
procedure TfrmFhMachRollMain.edtScanEnter(Sender: TObject);
begin
inherited;
setFocusCtrol(TWinControl(Sender).Name);
end;
procedure TfrmFhMachRollMain.edtScanKeyPress(Sender: TObject; var Key: Char);
begin
inherited;
if Key = #13 then
begin
if trim(edtScan.Text) = '' then
exit;
if trim(edtScan.Text) = FBCIOID then
exit;
ClearGlobal();
FOperationStatus := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
// InitLCK(edtScan.Text);
InitPlan(edtScan.Text);
frameBads1cxCheckBox_readLenPropertiesChange(frameBads1.IsSubtract);
// <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȹ<EFBFBD>ѡ
if trim(OrderNo.Text) <> '' then
InputLen.SetFocus;
cxGroupBox_keys.Visible := false;
end;
end;
//
function TfrmFhMachRollMain.SaveData(): Boolean;
var
maxno, MCIID, BZID, strsql: string;
MInputLen, MMeter, MYardage: double;
MInputWeight, MGrossWeight, MNetWeight, MTare, Maddwet, maddLen: double;
mYardStick: double;
mPresentLen,mpresentWeight:double;
begin
Result := false;
Maddwet :=strTofloatDef(trim(addwet.text),0);// Faddwet;
maddLen :=strTofloatDef(trim(addlen.text),0);// faddlen;
mYardStick := strtofloatdef(trim(RuleYardstick.Text), 100);
mPresentLen:=strTofloatDef(trim(presentlen.text),0);
mpresentWeight:=strTofloatDef(trim(presentWeight.text),0);
//0:<3A><><EFBFBD>䣻1<E4A3BB><31><EFBFBD><EFBFBD>ȥ<EFBFBD><C8A5><EFBFBD><EFBFBD>
if gPresentNumFlag=1 then
begin
mPresentLen :=-1 * mPresentLen;
mpresentWeight :=-1 * mpresentWeight;
end;
if FOperationStatus = '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
MCIID := FCIID;
end
else
begin
MCIID := '';
end;
try
ADOQueryBaseCmd.Connection.BeginTrans;
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
with ADOQueryBaseCmd do
begin
Close;
SQL.Clear;
SQL.Add('select * from Trade_Cloth_Inspect where CIID=''' +
trim(MCIID) + '''');
Open;
end;
with ADOQueryBaseCmd do
begin
if trim(MCIID) = '' then
begin
if not GetLSNo(ADOQueryBaseTemp, maxno, trim(SCXFlag),
'Trade_Cloth_Inspect', 4, 1) then
raise Exception.create('<27><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>');
Append;
fieldbyName('Filler').value := trim(DName);
fieldbyName('CIID').value := trim(maxno);
end
else
begin
maxno := trim(MCIID);
edit;
fieldbyName('Editer').value := trim(DName);
fieldbyName('EditTime').value := SGetServerDateTime(ADOQueryBaseTemp);
end;
// ϵ<><CFB5>
fieldbyName('Coefficient').value :=
strtofloatdef(trim(Coefficient.Text), 0); // ϵ<><CFB5>
/// ////////////////////// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> /////////////////////////
if cds_params.fieldbyName('weightRule').AsInteger = 0 then
// InputWeight ë<><C3AB> OutPutWeight <20><><EFBFBD><EFBFBD>
begin
MTare := strtofloatdef(trim(Tare.Text), 0); // Ƥ<><C6A4>
MInputWeight := RoundFloat(strtofloatdef(trim(InputWeight.Text), 0),
cds_params.fieldbyName('KgPlace').AsInteger); //<2F><><EFBFBD><EFBFBD>Ϊ ë<><C3AB>
MGrossWeight := MInputWeight + Maddwet +mPresentWeight; // ë<><C3AB> + <20><><EFBFBD><EFBFBD>
MNetWeight := MInputWeight + Maddwet - MTare +mPresentWeight; // <20><><EFBFBD><EFBFBD> + <20><><EFBFBD><EFBFBD>
fieldbyName('InputWeight').value := MInputWeight;
// <20><><EFBFBD><EFBFBD>
if MInputWeight > 0 then
begin
fieldbyName('NetWeight').value := MNetWeight;
// ë<><C3AB>
fieldbyName('GrossWeight').value := MGrossWeight;
end
else
begin
fieldbyName('NetWeight').value := 0;
fieldbyName('GrossWeight').value := 0;
end;
fieldbyName('Tare').value := MTare;
fieldbyName('addwet').value := Maddwet;
end;
if cds_params.fieldbyName('weightRule').AsInteger = 1 then
// InputWeight <20><><EFBFBD><EFBFBD> OutPutWeight ë<><C3AB>
begin
MTare := strtofloatdef(trim(Tare.Text), 0); // Ƥ<><C6A4>
MInputWeight := RoundFloat(strtofloatdef(trim(InputWeight.Text), 0),
cds_params.fieldbyName('KgPlace').AsInteger); // <20><><EFBFBD><EFBFBD>
MGrossWeight := MInputWeight + MTare + Maddwet+mPresentWeight; // ë<><C3AB>
MNetWeight := MInputWeight + Maddwet + mPresentWeight; // <20><><EFBFBD><EFBFBD> +<2B><><EFBFBD><EFBFBD>
fieldbyName('InputWeight').value := MInputWeight;
if MInputWeight > 0 then
begin
fieldbyName('NetWeight').value := MNetWeight;
fieldbyName('GrossWeight').value := MGrossWeight;
end
else
begin
fieldbyName('NetWeight').value := 0;
fieldbyName('GrossWeight').value := 0;
end;
// Ƥ<><C6A4>
fieldbyName('Tare').value := MTare;
fieldbyName('addwet').value := Maddwet;
end;
/// ////////////////////// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> /////////////////////////
///
/// ////////////////////// <20><><EFBFBD><EFBFBD><E6B3A4> /////////////////////////
/// = '<27><>'
if strtofloatdef(trim(Edit_fixLen.Text), 0) > 0 then
MInputLen := strtofloatdef(trim(Edit_fixLen.Text), 0)
else
MInputLen := RoundFloat(strtofloatdef(trim(InputLen.Text), 0), 4);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+mAddLen
if (uppercase(lblLenUnit.CaptionOptions.Hint)='M') or
(lblLenUnit.CaptionOptions.Hint='<27><>') then
begin
MMeter := RoundFloat((MInputLen + maddLen+mPresentLen) / (mYardStick / 100),
cds_params.fieldbyName('MPlace').AsInteger);
MYardage := RoundFloat(MMeter / 0.9144, cds_params.fieldbyName('YPlace')
.AsInteger);
end
else
begin
MYardage := RoundFloat((MInputLen + maddLen + mPresentLen) / (mYardStick / 100),
cds_params.fieldbyName('YPlace').AsInteger);
MMeter := RoundFloat(MYardage * 0.9144, cds_params.fieldbyName('MPlace')
.AsInteger);
end;
fieldbyName('InputLen').value :=
RoundFloat(strtofloatdef(trim(InputLen.Text), 0), 2);
fieldbyName('Meter').value := MMeter;
fieldbyName('Yardage').value := MYardage;
fieldbyName('LenUnit').value := trim(lblLenUnit.CaptionOptions.Hint);
fieldbyName('AddLen').value := maddLen;
fieldbyName('YardStick').value := mYardStick;
/// ////////////////////// <20><><EFBFBD><EFBFBD><E6B3A4> /////////////////////////
// if Trim(Edit_zp.Text) <> '' then
// begin
fieldbyName('Grade').value := trim(grade.Text);
// end;
// if Trim(Edit_cp.Text) <> '' then
// begin
// FieldByName('Grade').Value := '<27><>Ʒ';
// end;
if FOperationStatus <> '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
fieldbyName('PieceNo').value := 0;
end;
// <20>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD>
if (FRulePieceNo = '<27>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD>') or (FRulePieceNo = '<27>ֶ<EFBFBD>') or
(cds_params.fieldbyName('rollnoMake').AsString = '<27>ֶ<EFBFBD>') then
begin
fieldbyName('PieceNo').value := strtoint(trim(PieceNo.Text));
end;
fieldbyName('status').value := '0';
fieldbyName('OrderNo').value := trim(FOrderNo);
fieldbyName('MainId').value := trim(FMainId);
fieldbyName('SubId').value := trim(FSubId);
fieldbyName('ConNo').value := trim(FConNo);
fieldbyName('ConMId').value := trim(FConMId);
fieldbyName('ConSId').value := trim(FConSId);
fieldbyName('BCIOID').value := trim(FBCIOID);
fieldbyName('Workshop').value := trim(FWorkshop);
if dxLayoutItem_rk.Visible then
fieldbyName('CIIOFlag').value := <><CEB4><EFBFBD><EFBFBD>'
else
fieldbyName('CIIOFlag').value := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
fieldbyName('C_Code').value := FC_Code;
fieldbyName('C_Name').value := FC_Name;
fieldbyName('C_EName').value := FC_EName;
fieldbyName('BatchNO').value := BatchNO.Text;
fieldbyName('FtyPCId').value := FtyPCId.Text; // ԭ<>׺<EFBFBD>
fieldbyName('C_Spec').value := FC_Spec;
fieldbyName('C_Color').value := FC_Color;
fieldbyName('C_EColor').value := FC_EColor;
fieldbyName('C_ColorNo').value := FC_ColorNo;
fieldbyName('C_StyleNo').value := FC_StyleNo;
fieldbyName('C_Composition').value := FC_Composition;
if dxLayoutItem_width.ActuallyVisible then
fieldbyName('C_Width').value :=trim(C_width.Text)
else
fieldbyName('C_Width').value := FC_Width;
if dxLayoutItem_gram.ActuallyVisible then
fieldbyName('C_GramWeight').value :=trim(C_GramWeight.Text)
else
fieldbyName('C_GramWeight').value := FC_GramWeight;
fieldbyName('C_Pattern').value := FC_Pattern;
fieldbyName('C_CustPattern').value := FC_CustPattern;
fieldbyName('C_ColorDepth').value := FC_ColorDepth;
fieldbyName('CIMachNo').value := trim(SCXFlag);
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
fieldbyName('AddwetVirtual').value := fAddwetVirtual;
fieldbyName('AddLenVirtual').value := fAddLenVirtual;
fieldbyName('AddwetPresent').value :=abs(mPresentWeight);
// cds_params.fieldbyName('AddwetPresent').AsFloat;
fieldbyName('AddLenPresent').value := abs(mPresentLen);
// cds_params.fieldbyName('AddLenPresent').AsFloat;
//<2F>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1
fieldbyName('customStrField1').value :=trim(customStrField1.Text) ;
fieldbyName('customStrField2').value :=trim(customStrField2.Text) ;
Post;
end;
MCIID := trim(maxno);
FCIID := trim(maxno);
/// /////////////// <20><><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><C3B5><EFBFBD>Ϣ //////////////////
with CDS_2 do
begin
First;
while not eof do
begin
if trim(CDS_2.fieldbyName('CIFID').AsString) = '' then
begin
if not GetLSNo(ADOQueryBaseTemp, maxno, 'JC',
'Trade_Cloth_Inspect_Flaw', 5, 1) then
raise Exception.create('<27><>ȡ<EFBFBD>õ<EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>');
end
else
begin
maxno := trim(CDS_2.fieldbyName('CIFID').AsString);
end;
with ADOQueryBaseCmd do
begin
Close;
SQL.Clear;
SQL.Add('select * from Trade_Cloth_Inspect_Flaw ');
SQL.Add(' where CIFID=''' + trim(maxno) + '''');
Open;
end;
with ADOQueryBaseCmd do
begin
if trim(CDS_2.fieldbyName('CIFID').AsString) = '' then
Append
else
edit;
RTSetSaveDataCDS(ADOQueryBaseCmd, Tv2, CDS_2,
'Trade_Cloth_Inspect_Flaw', 0);
fieldbyName('CIID').value := trim(MCIID);
fieldbyName('CIFID').value := trim(maxno);
Post;
end;
CDS_2.edit;
CDS_2.fieldbyName('CIID').value := trim(MCIID);
CDS_2.fieldbyName('CIFID').value := trim(maxno);
next;
end;
end;
/// /////////////// <20><><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><C3B5><EFBFBD>Ϣ //////////////////
///
/// /////////////// <20><><EFBFBD>¾<EFBFBD><C2BE>Ŵõ<C5B4><C3B5><EFBFBD>Ϣ //////////////////
with ADOQueryBaseCmd do
begin
Close;
SQL.Clear;
SQL.Add('exec P_Trade_Insp_Up_pack @CIID=''' + trim(MCIID) + '''');
if FOperationStatus = '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
SQL.Add(',@InspType=' + QuotedStr('<27><><EFBFBD><EFBFBD><ECB2BC><EFBFBD><EFBFBD>'))
else
SQL.Add(',@InspType=' + QuotedStr('<27><><EFBFBD><EFBFBD><EFBFBD>޸<EFBFBD>'));
if (cds_params.fieldbyName('rollnoMake').AsString = '<27>ֶ<EFBFBD>') then
begin
SQL.Add(',@RulePieceNo=' + QuotedStr('<27>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD>')); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>
end
else
begin
SQL.Add(',@RulePieceNo=' + QuotedStr(FRulePieceNo)); // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>
end;
ExecSQL;
end;
//<2F>ж<EFBFBD><D0B6>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ظ<EFBFBD>
if not checkPicecNo() then
begin
exit;
end;
/// /////////////// <20><><EFBFBD>¾<EFBFBD><C2BE>Ŵõ<C5B4><C3B5><EFBFBD>Ϣ //////////////////
///
/// /////////////// <20><><EFBFBD>¿<EFBFBD><C2BF><EFBFBD> //////////////////
with ADOQueryBaseCmd do
begin
Close;
SQL.Clear;
SQL.Add('insert into Trade_Need_Up(UOperation,UType,UDataId,uoperator) values(''<27><><EFBFBD><EFBFBD>'',''<27><>̨<EFBFBD><CCA8><EFBFBD><EFBFBD>'','
+ QuotedStr(maxno) +','+QuotedStr(DName)+ ') ');
ExecSQL;
end;
/// /////////////// <20><><EFBFBD>¿<EFBFBD><C2BF><EFBFBD> //////////////////
///
ADOQueryBaseCmd.Connection.CommitTrans;
/// /////////////// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2BCB0><EFBFBD><EFBFBD> //////////////////
with ADOQueryBaseCmd do
begin
Close;
SQL.Clear;
SQL.Add('exec P_Trade_Insp_In_Stk @CIID=''' + trim(MCIID) + '''');
ExecSQL;
end;
// Open;
// end;
// if ADOCmd.FieldByName('intReturn').AsInteger = -1 then
// begin
// application.MessageBox(PChar(trim(ADOCmd.FieldByName('ShowMsg').AsString)), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
// Result := False;
// end
// else
// begin
// Result := True;
// end;
/// /////////////// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E2BCB0><EFBFBD><EFBFBD> //////////////////
Result := true;
except
ADOQueryBaseCmd.Connection.RollbackTrans;
Application.MessageBox(pchar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
//
procedure TfrmFhMachRollMain.PrtData(MCIID: string; againPring: Boolean = false);
var
fPrintFile: string;
Txt, fImagePath, Txt2, fImagePath2: string;
Moudle: Thandle;
Makebar: TMakebar;
Mixtext: TMixtext;
begin
with ADOQueryPrint do
begin
Close;
SQL.Clear;
SQL.Add(' EXEC P_Trade_Print_Lab ');
SQL.Add(' @CIID=''' + trim(MCIID) + '''');
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('SLabVolume').AsString) <> '' then
fLabVolume := trim(ADOQueryPrint.fieldbyName('SLabVolume').AsString)
else
fLabVolume := trim(ADOQueryPrint.fieldbyName('LabVolume').AsString);
if fLabVolume = '' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><CEB4><EFBFBD>ñ<EFBFBD>ǩ<EFBFBD><C7A9>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
exit;
end;
ExportFtErpFile(fLabVolume + '.rmf', ADOQueryBaseTemp);
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 := cds_params.fieldbyName('labNumber').AsInteger ;
// else
// RM1.DefaultCopies := 1;
RM1.PrintReport;
//
if againPring then
begin
with ADOQueryBaseCmd do
begin
Close;
SQL.Clear;
SQL.Add('insert into Trade_Need_Up(UType,UOperation,UDataId,uoperator) values(''<27><><EFBFBD><EFBFBD>'',''<27>ش<EFBFBD><D8B4><EFBFBD><EFBFBD><EFBFBD>ǩ'','
+ QuotedStr(trim(cds_3.fieldbyName('CIID').AsString)) + ',' +
QuotedStr(DName) + ') ');
ExecSQL;
end;
end;
end
else
begin
Application.MessageBox(pchar(<><C3BB><EFBFBD><EFBFBD>' + fPrintFile), '<27><>ʾ', 0);
end;
end;
//
procedure TfrmFhMachRollMain.PrintBao(PPacketId: string;
againPring: Boolean = false);
var
fPrintFile: string;
Txt, fImagePath: string;
Moudle: Thandle;
Makebar: TMakebar;
Mixtext: TMixtext;
begin
with ADOQueryPrint do
begin
Close;
SQL.Clear;
SQL.Add('exec P_Trade_Insp_Prt_PackLab ' + QuotedStr(PPacketId));
Open;
end;
if trim(ADOQueryPrint.fieldbyName('SLabPackage').AsString) <> '' then
fLabPackage := trim(ADOQueryPrint.fieldbyName('SLabPackage').AsString)
else
fLabPackage := ADOQueryPrint.fieldbyName('LabPackage').AsString;
ExportFtErpFile(trim(fLabPackage) + '.rmf', ADOQueryBaseTemp);
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' +
trim(fLabPackage) + '.rmf';
if not FileExists(fPrintFile) then
begin
Application.MessageBox(pchar(<><C3BB><EFBFBD>Ұ<EFBFBD><D2B0><EFBFBD>ǩ' + fPrintFile), '<27><>ʾ', 0);
exit;
end;
if FileExists(fPrintFile) then
begin
RM1.LoadFromFile(fPrintFile);
RM1.DefaultCopies := cds_params.fieldbyName('packlabnumber').AsInteger ;
if cds_params.fieldByName('packPrintPreview').AsBoolean then
RM1.ShowReport
else
RM1.PrintReport;
end;
if againPring then
begin
with ADOQueryBaseCmd do
begin
Close;
SQL.Clear;
SQL.Add('insert into Trade_Need_Up(UType,UOperation,UDataId,uoperator) values(''<27><><EFBFBD><EFBFBD>'',''<27>ش<EFBFBD><D8B4><EFBFBD><EFBFBD><EFBFBD>ǩ'','
+ QuotedStr(trim(cds_3.fieldbyName('CIID').AsString)) + ',' +
QuotedStr(DName) + ') ');
ExecSQL;
end;
end;
if FileExists(fImagePath) then
DeleteFile(fImagePath);
end;
procedure TfrmFhMachRollMain.InitJTM(MCIID: string);
begin
with ADOQueryBaseTemp do
begin
Close;
SQL.Clear;
SQL.Add('select * from Trade_Cloth_IO where StkId=''' + trim(MCIID) +
''' and IOFlag=''<27><><EFBFBD><EFBFBD>''');
Open;
if not IsEmpty then
begin
Application.MessageBox('<27>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2>ܲ<EFBFBD><DCB2><EFBFBD>!', '<27><>ʾ', 0);
exit;
end;
end;
//
with ADOQueryBaseTemp do
begin
Close;
SQL.Clear;
SQL.Add('select * from Trade_Cloth_IO where StkId=''' + trim(MCIID) +
''' and IOFlag=''<27><><EFBFBD><EFBFBD>''');
Open;
end;
if not ADOQueryBaseTemp.IsEmpty then
begin
Application.MessageBox('<27>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2>ܲ<EFBFBD><DCB2><EFBFBD>!', '<27><>ʾ', 0);
exit;
end;
with ADOQueryBaseTemp do
begin
Close;
SQL.Clear;
SQL.Add('select * from Trade_Cloth_Inspect where CIID=''' +
trim(MCIID) + '''');
Open;
end;
if not ADOQueryBaseTemp.IsEmpty then
begin
FOperationStatus := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
FCIID := MCIID;
InitCDGrid(MCIID);
end;
end;
//
procedure TfrmFhMachRollMain.BadSpeedButtonClick(Sender: TObject);
var
i: Integer;
begin
inherited;
if CheckData('<27>õ<EFBFBD>') = false then
exit;
frameBads1.dxPanel1.Visible := true;
FCIFName := trim(TSpeedButton(Sender).Hint);
frameBads1.lblCIFName.Caption := trim(TSpeedButton(Sender).Hint);
frameBads1.CIFNumber.SetFocus;
frameBads1cxCheckBox_readLenPropertiesChange(frameBads1.IsSubtract);
end;
procedure TfrmFhMachRollMain.On1301(var Message: Tmessage);
var
i1, i2: Integer;
unitname: string;
fdata: double;
begin
i1 := Message.WParam;
i2 := Message.LParam;
if (trim(cds_params.fieldbyName('mabiao').AsString) = '1') then
begin
InputLen.Text := format('%.2f', [i1 / 100000]);
if trim(cds_params.fieldbyName('mbunit').AsString) = '1' then
begin
if i2 = 0 then
begin
SetUnit('M');
end
else
begin
SetUnit('Y');
end;
end;
end;
end;
procedure TfrmFhMachRollMain.On1201(var Message: Tmessage);
var
i1, i2: Integer;
unitname: string;
fdata: double;
begin
i1 := Message.WParam;
i2 := Message.LParam;
if trim(cds_params.fieldbyName('chen').AsString) = '1' then
begin
InputWeight.Text := format('%.2f', [i1 / 100000]);
end;
end;
procedure TfrmFhMachRollMain.PrtMD(MInNo: string);
var
fPrintFile, FLBName: string;
begin
with ADOQueryPrint do
begin
Close;
SQL.Clear;
SQL.Add(' EXEC P_Trade_Cloth_In_Prt11 ');
SQL.Add(' @Filtration=''' + trim(MInNo) + '''');
Open;
end;
FLBName := '<27><>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ⵥ';
ExportFtErpFile(FLBName + '.rmf', ADOQueryBaseTemp);
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\' +
FLBName + '.rmf';
if FileExists(fPrintFile) then
begin
RM1.LoadFromFile(fPrintFile);
RM1.DefaultCopies := cds_params.fieldbyName('labNumber').AsInteger;
RM1.PrintReport;
end
else
begin
Application.MessageBox(pchar(<><C3BB><EFBFBD><EFBFBD>' + fPrintFile), '<27><>ʾ', 0);
end;
end;
/// ////////////
procedure TfrmFhMachRollMain.initEditPiece();
begin
if BTPrint.Caption = '<27><> <20><>' then
begin
BTPrint.Caption := '<27>޸<EFBFBD><DEB8>ύ';
with cds_3 do
begin
InputLen.Text := fieldbyName('InputLen').AsString;
InputWeight.Text := fieldbyName('InputWeight').AsString;
Tare.Text := fieldbyName('Tare').AsString;
grade.ItemIndex := grade.Properties.Items.IndexOf
(trim(fieldbyName('grade').AsString));
// Coefficient.Text:=fieldByName('Coefficient').AsString;
end;
edtPacketNo.Enabled:=False;
end
else
begin
BTPrint.Caption := '<27><> <20><>';
InputLen.Text := '';
InputWeight.Text := '';
OutPutWeight.Text := '';
edtPacketNo.Enabled:=true;
grade.ItemIndex := 0;
cds_params.edit;
cds_params.fieldbyName('chen').value := '1';
cds_params.fieldbyName('mabiao').value := '1';
cds_params.Post;
end;
end;
procedure TfrmFhMachRollMain.GetPacketNo();
var
mMaxPacketNo: string;
begin
try
with ADOQueryBaseTemp do
begin
Close;
SQL.Clear;
SQL.Add('select max(cast(isnull(PacketNo,''0'') as int) )+1 as MaxPacketNo from Trade_Cloth_Stock ');
SQL.Add('where OrderNo=' + QuotedStr(trim(OrderNo.Text)));
Open;
end;
mMaxPacketNo := trim(ADOQueryBaseTemp.fieldbyName('MaxPacketNo').AsString);
if mMaxPacketNo = '' then
mMaxPacketNo := '1';
edtPacketNo.Text := mMaxPacketNo;
except
end;
end;
procedure TfrmFhMachRollMain.getPlanImage(MSubID: string);
begin
with ADOQueryImage do
begin
close;
sql.Clear;
sql.Add('select top 1 * from TP_File A');
sql.Add('where WBID=' + quotedstr(MSubID));
open;
end;
end;
/////////////////////////////////////
function TfrmFhMachRollMain.deletePack(packId:string):boolean;
var
ccids:String;
packNo:integer;
begin
try
ccids :='';
packNo:=strtointdef(Trim(cds_3.FieldByName('packetNo').AsString),0);
ADOQueryBaseCmd.Connection.BeginTrans;
cds_3.First;
while not cds_3.eof do
begin
if Trim(cds_3.FieldByName('packetid').AsString)=packId then
begin
ccids :=ccids+',' +Trim(cds_3.FieldByName('CIID').AsString) ;
end;
with ADOQueryBaseCmd do
begin
Close;
SQL.Clear;
SQL.Add('insert into Trade_Need_Up(UType,UOperation,UDataId,uoperator) values(''<27><><EFBFBD><EFBFBD>'',''<27><><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>'','
+ QuotedStr(Trim(cds_3.FieldByName('CIID').AsString)) + ',' +
QuotedStr(DName) + ') ');
ExecSQL;
end;
cds_3.Next;
end;
with ADOQueryBaseCmd do
begin
Close;
SQL.Clear;
SQL.Add('exec P_Trade_Insp_Del ');
SQL.Add('@CIIDS=' + QuotedStr(ccids));
SQL.Add(',@DCode=' + QuotedStr(DCode));
SQL.Add(',@DName=' + QuotedStr(DName));
Open;
end;
if ADOQueryBaseCmd.fieldbyName('intReturn').AsInteger = -1 then
begin
raise Exception.create
(pchar(trim(ADOQueryBaseCmd.fieldbyName('ShowMsg').AsString)));
end;
ADOQueryBaseCmd.Connection.CommitTrans;
if inttostr(packNo+1)=trim(edtPacketNo.Text) then
begin
edtPacketNo.Text :=inttostr(packNo);
end;
InitJYGrid();
Application.MessageBox(<><C9BE><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
except
ADOQueryBaseCmd.Connection.RollbackTrans;
Application.MessageBox(pchar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
//////////////////////////////////////////////////////
///
function TfrmFhMachRollMain.checkPicecNo():boolean;
var
pieceNo:string;
begin
result:=false;
if FRulePieceNo='' then
begin
ADOQueryBaseCmd.Connection.RollbackTrans;
showMessage('<27>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><CEB4><EFBFBD>þ<EFBFBD><C3BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>!');
exit;
end;
try
//////////////////<2F><><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><D8B8>ж<EFBFBD>
with ADOQueryBaseCmd do
begin
Close;
sql.Clear;
if FRulePieceNo='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
sql.Add('select Mainid,pieceNo from Trade_Cloth_Inspect X where X.mainID=' + quotedstr(Trim(FMainId)));
sql.Add(' Group by Mainid,pieceNo having count(*)>1');
end
else if FRulePieceNo='<27><><EFBFBD>׺<EFBFBD><D7BA><EFBFBD><EFBFBD><EFBFBD>' then
begin
sql.Add('select mainId,C_color,batchNo,pieceNo from Trade_Cloth_Inspect X ');
sql.Add('where X.mainID=''' + Trim(FMainId) + ''' and X.c_color=' +quotedstr(Trim(FC_Color)) + ' and isnull(X.BatchNO,'''')=' + quotedstr(Trim(BatchNO.Text)));
sql.Add(' Group by mainId,C_color,BatchNO,pieceNo having count(*)>1');
end
else if FRulePieceNo='<27><><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD>' then
begin
sql.Add('select mainId,C_color,pieceNo from Trade_Cloth_Inspect X ');
sql.Add('where X.mainID=''' + Trim(FMainId) + ''' and X.c_color=' + quotedstr(Trim(FC_Color)) );
sql.Add(' Group by mainId,C_color,pieceNo having count(*)>1');
end;
Open;
end;
if not ADOQueryBaseCmd.IsEmpty then
begin
ADOQueryBaseCmd.Connection.RollbackTrans;
pieceNo := Trim(ADOQueryBaseCmd.fieldbyname('pieceNo').AsString);
if fileexists(ExtractFilePath(Application.ExeName) + '<27><><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD>.wav') then
PlaySound('<27><><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD>.wav', 0, SND_FILENAME or SND_ASYNC);
Application.MessageBox(Pchar('<27><><EFBFBD><EFBFBD>: ' + Trim(pieceNo) + ' <20>ظ<EFBFBD><D8B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˶Դ<CBB6><D4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!'), '<27><>ʾ', 0);
Exit;
end;
//
result:=true;
except
ADOQueryBaseCmd.Connection.RollbackTrans;
Application.MessageBox(Pchar('<27>жϾ<D0B6><CFBE><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ظ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!'), '<27><>ʾ', 0);
end;
end;
/////////////////////////////////////////////////////////////////
///
function TfrmFhMachRollMain.getCurPieceNO(mCcid:String):string;
begin
result:='';
try
with ADOQueryBaseTemp do
begin
close;
sql.Clear;
sql.Add('select PieceNo from Trade_Cloth_Inspect where CIID='+quotedstr(mCcid));
open;
if ADOQueryBaseTemp.fieldByName('PieceNo').AsInteger>0 then
result:=intTostr(ADOQueryBaseTemp.fieldByName('PieceNo').AsInteger+1);
end;
except
application.MessageBox('<27><>ȡ<EFBFBD><C8A1>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
end;
end;
end.