我想将 startDate 和 Enddate 复制到另一行,
我有这个:
GetDates(Bom : Record "BOM Component";VAR StartDateItem : Date;VAR EndDateItem : Date;RegelkortingItem : Decimal)
IF GET(Bom."Parent Item No.",Bom."Line No.") THEN BEGIN
StartDateItem :=StartDate2;
EndDateItem := EndDate2;
RegelkortingItem := Regelkorting;
END;
SetDates(Bom : Record "BOM Component";VAR StartDateItem : Date;VAR EndDateItem : Date;RegelkortingItem : Decimal)
"Parent Item No." := Bom."Parent Item No.";
"Line No." := Bom."Line No.";
StartDate2 := StartDateItem;
EndDate2 := EndDateItem;
Regelkorting := RegelkortingItem;
IF NOT MODIFY THEN
INSERT;
这是一张图片
黑色标记线 - 必须复制相同的日期
谢谢
这是onvalidate:
BeginDate - OnValidate()
SetDates(Rec, StartDate2, EndDate2, Regelkorting);
所以我试试这个:
Rec.SETRANGE(StartDate2,StartDate2);
IF StartDate2 <> StartDate2 THEN
//IF (Rec.COUNT > 1) THEN //AND (FORMAT(Rec.StartDate2) = FORMAT(Rec.StartDate2))) THEN
ERROR('The dates has to be the same!! ');
//END;
所以日期必须相同。
我现在有这样的:
IF StartDate2 <> BOMB.StartDate2 THEN
//IF (Rec.COUNT > 1) THEN //AND (FORMAT(Rec.StartDate2) = FORMAT(Rec.StartDate2))) THEN
ERROR('The dates has to be the same!! ');
但是如果我只放一个开始日期,那么错误消息已经显示
好的,我现在有完整的代码,如下所示:
SetDates(Rec, StartDate2, EndDate2, Regelkorting);
//StartDateInsert := Rec.StartDate2;
BOMB.RESET;
BOMB.SETRANGE(StartDate2,StartDate2);
IF BOMB.FINDFIRST THEN;
IF StartDate2 <> BOMB.StartDate2
THEN ERROR('The dates has to be the same!! ');
但什么也没有发生
例如我想比较日期:像这样:
好的,这行得通。但仅在第一张唱片上
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