|
楼主 |
发表于 2007-7-30 16:07:43
|
显示全部楼层
这些天对代码有多点认识,基本上已经搞定了。但是有个问题是FocusControl对不上,例如第二行不符合,我把鼠标放在其他列,按了保存后,焦点跳到这一列的第二行,但不是跳到第二行的'PIECE_NUM'列上。
var
PIECE_NUM : String;
begin
DataSetSALES_RECORD_INPUT_DTS.First;
while not DataSetSALES_RECORD_INPUT_DTS.Eof do
begin
PIECE_NUM :=DataSetSALES_RECORD_INPUT_DTS.FieldByName('PIECE_NUM').AsString;
if (PIECE_NUM.Length <> 6) OR (Variants.VarToStr(StringUtils.Copy(PIECE_NUM,0,1))<>'0') then
begin
DataSetSALES_RECORD_INPUT_DTS.FieldByName('PIECE_NUM').FocusControl;
Dialogs.ShowMessage('批号第一个数字必须为0,且必须6位,请修改!');
SysUtils.Abort;
end;
DataSetSALES_RECORD_INPUT_DTS.Next;
end;
end; |
|