Navision 检查startdate是否大于enddate
我想比较两个日期。我是这样说的:Navision 检查startdate是否大于enddate,navision,dynamics-nav,microsoft-dynamics-nav,Navision,Dynamics Nav,Microsoft Dynamics Nav,我想比较两个日期。我是这样说的: 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'
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表组件
东、北、北、东、东、北、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东、东
谢谢比较没问题,但我认为你没有找到正确的炸弹记录 你有这个:
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.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;