在视图中展示 rtf 域的值的方法

来源:互联网 发布:javascript 关联数组 编辑:程序博客网 时间:2024/05/20 18:15

问题描述:

Notes是不允许把RTF(Rich Text Field)中的信息直接显示在视图中的列里。那么,有没有变通的办法可以实现呢?

解答:

使用 @Abstract,就可以把RTF(Rich Text Field)中的信息显示在视图中的列 里。

例如,用户有一个叫做“Body”的RTF 域,为了把这个“Body”域里的文本信息显示出来,需要创建一个叫做“TextForView”的计算域,设置它从RTF 域里的内容读取文本信息。具体的公式为:

@Abstract( [TextOnly] ; 15360 ; “” ; “Body”)

其中,15360的数值是可以使用的最大值。这是因为文本域在一个视图的列里是不能显示超过15360个字符的。设计者需要考虑所要显示的最多的字符数,然后用@Abstract的公式来定义它。

之后,在视图列的公式中,定义为使用这个TextForView的域。

如果在已有的文档中实施这个方法,那么这些文档还需要被刷新(或是编辑并保存),这样才能执行这个计算域(如此例中的TextForView)。为了刷新所选的文档,可以创建一个便捷图标或是工具条的图标,并定义它使用以下的公式:

@Command([ToolsRefreshSelectedDocs])

另外,还需要注意的是,对于列的公式,一定需要使用另外一个计算域,而这个计算域需要使用@Abstract的公式。这是因为,此公式是不推荐被直接使用在列的选择公式里。具体内容请参考管理员指南中的《Where does this @function work?》中的相关章节。

或者:

使用工时重新保存已经存在的文档

Dim session as new notessession dim db as notesdatabase dim view as notesview dim doc as notesdocument set db = session.currentdatabase set view = db.getview("") set doc = view.getfirstdocument() while not doc is nothing Call doc.computewithform(true, false) Call doc.save(true,true) Set doc = view.getnextdocument(doc) wend

0 0
原创粉丝点击