计算字段不使用文档中的示例

时间:2009-05-27 07:06:57

标签: sharepoint-2007 wss-3.0

例如,我尝试了以下documentation中的示例:

=TEXT(WEEKDAY([Column1]), "dddd")

但它不起作用。 Exception表示UpdateField方法存在语法错误。好吧,我用适当的(本地化)列值替换了Column1,甚至尝试了常量值。

我可以使用其他功能,例如YEAR,MONTH,但不能使用CHOOSE或TEXT。我可以用任何一个实现我的目标,但没有一个可行。 (我希望按年份对列表项进行分组)。

我有一个本地化的(好的,有一个语言包.SP2语言包)MOSS2007 SP2。

P.S。我检查了当我创建英文版网站时,我能够使用公式,但不能使用官方本地化的公式。有没有人有解决方法?

感谢您的建议。

2 个答案:

答案 0 :(得分:1)

使用语言包时,您需要将运算符翻译成您自己的语言。我在运行荷兰语语言包时遇到了同样的问题。

文档很难找到,你必须搜索google自己的语言“计算列公式的例子”

这里是荷兰文档的链接

Office Online Article in Dutch

这是英文版:

Office Online Article in English

P.S。即使是正确的语言并不总是奏效。一种解决方法是尝试将计算列创建为站点列,不知何故,它在那里工作得更好,Sharepoint将为您传播......

答案 1 :(得分:1)

最后有一个解决方案!

在功能中定义计算字段!我不知道LCID =“1033”在这里是否有帮助,但是我从我在英文版网站上制作的字段中复制了模式(计算字段可以工作......)。

<Field Type="Calculated" DisplayName="Hours" Format="DateTime" LCID="1033" ResultType="Number" ReadOnly="TRUE" ID="{49820FB0-705D-4335-AA1F-EF6616D05F59}" StaticName="Hours" Name="Hours" Required="FALSE" Percentage="FALSE" Decimals="2">
    <Formula>=IF(ISBLANK(CheckoutTime),0,TEXT(CheckoutTime-CheckinTime,"[s]")/3600)</Formula>
    <FieldRefs>
      <FieldRef Name="CheckinTime" />
      <FieldRef Name="CheckoutTime" />
    </FieldRefs>
  </Field>