我正在尝试使用 Lotus Formula 更新列表中的元素。
我以为你会这样做:
x := "0":"0":"0";
x[1] := "1";
但是当我尝试保存时,出现以下错误:
:= must be immediately preceded by a field or variable name
我正在尝试使用 Lotus Formula 更新列表中的元素。
我以为你会这样做:
x := "0":"0":"0";
x[1] := "1";
但是当我尝试保存时,出现以下错误:
:= must be immediately preceded by a field or variable name
下标运算符不能用在赋值语句的左侧。也就是说,您不能为下标元素赋值。您必须建立完整的列表,然后分配它。例如,如果 Categories 是一个 3 元素列表,并且您想为元素 2 分配一个新值:
FIELD Categories := Categories[1] : "CatNew" : Categories[3]
您通常可以使用@Implode、@Explode 或@Replace 来获取。但如果你真的需要它,你可以这样做:
REM {FieldName[Index] := NewVal};
Index := 2;
NewVal := "CatNew";
maxIndex := @Elements(FieldName);
PrePart := @If(Index > 1; @Subset(FieldName; Index-1); "");
PostPart := @If(Index < maxIndex; @Subset(FieldName; (Index-maxIndex)); "");
Field FieldName := PrePart : NewVal : PostPart