-2

我想将 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
4

1 回答 1

0

调用SetDates()函数StartDate2EndDate2具有正确的值时首先检查。也许这是错误。

你的代码是这样的:

BeginDate - OnValidate()
SetDates(Rec, StartDate2, EndDate2, Regelkorting);

在这里,您传递 a RecStartDate2并且EndDate2它们具有的值Rec而不是正确的值。

尝试更改此代码:

BeginDate - OnValidate()
SetDates(Rec, StartDateItem, EndDateItem, Regelkorting);
于 2016-09-30T13:56:58.840 回答