1

我想比较两个日期。我试过这样:

SetDates(Rec, StartDate2, EndDate2, Regelkorting);

BOMB.RESET;
BOMB.SETRANGE(StartDate2,StartDate2);
IF BOMB.FINDFIRST THEN BEGIN
IF BOMB.StartDate2 > BOMB.EndDate2 THEN BEGIN
ERROR('startdatum kan niet groter zijn dan einddatum');
END;
END

但是没有消息显示

这是输出:

BOM 组件 530120,10000,Artikel,530120,Intergas 041107 HREco 24 CW3,ST,0,,,,,0,,0,,01-10-16,10-10-13,0,Nee,Nee,

谢谢

4

1 回答 1

2

比较没问题,但我认为您没有找到正确的 BOMB 记录。

你有这个:

BOMB.RESET;
BOMB.SETRANGE(StartDate2,StartDate2);
IF BOMB.FINDFIRST THEN BEGIN
  IF BOMB.StartDate2 > BOMB.EndDate2 THEN BEGIN
    ERROR('startdatum kan niet groter zijn dan einddatum');
  END;
END;

您仅按StartDate2字段过滤,而不按主键过滤,因此您找到了错误的记录。

因此,如果您没有更改此字段,则为主键、标准BOM 组件表的字段过滤 BOMB 表具有此主键,请尝试以下操作:Parent Item No.,Line No.

BOMB.RESET;
BOMB.SETRANGE("Parent Item No.", "Parent Item No.");
BOMB.SETRANGE("Line No.", "Line No.");
IF BOMB.FINDFIRST THEN BEGIN
  IF BOMB.StartDate2 > BOMB.EndDate2 THEN BEGIN
    ERROR('startdatum kan niet groter zijn dan einddatum');
  END;
END;
于 2016-10-07T12:09:16.000 回答