SharePoint CAML查询中的上限功能

时间:2009-03-19 04:51:44

标签: sharepoint moss wss caml

我正在尝试为sharepoint列表创建一个自定义视图,类似于此处解释的那个:

http://msdn.microsoft.com/en-us/library/ms916812.aspx

我有一个列是一个数字字段,其值介于0到100之间。

我需要创建一个视图样式,它将根据列值在列中显示图像,而不是显示值。

如果值介于0到25之间,我需要显示图像25.gif 如果值在25到50之间,我需要显示图像50.gif ..... 等等。

这里涉及的计算是CEILING函数,CEILNG(NumberColumn,25)

问题是,我需要在CAML中指定这个,在VWSTYLES.XML中

如何在CAML中指定Ceilnig功能?

2 个答案:

答案 0 :(得分:1)

CEILING用于舍入十进制值。由于您只有几张图片,我只会使用嵌套的IF函数:

=IF([NumberColumn]>76, "100.gif", IF([NumberColumn]>51, "75.gif",
 IF([NumberColumn]>26,  "50.gif", "25.gif")))

您还可以使用MOD功能将0-24转换为0,25-49转换为1等,并从那里计算您的图像。

答案 1 :(得分:1)

其他一些选择可能是:

由于VWSTYLES.XML只是渲染html的一种非常尴尬的方式,您可以将一些javascript编码到VWSTYLES.XML中,以使用正确的源渲染图像标记。

或者,开发一个ascx控件并获取VWSTYLES.XML以呈现控件而不是HTML。只要你能正确地在页面上注册控件。