【问题标题】:Creating view with a specific formula使用特定公式创建视图
【发布时间】:2014-01-24 13:46:34
【问题描述】:

我有一个包含数千封电子邮件的数据库,我想对可以复制的邮件进行选择/排序 - 粘贴到另一个数据库中。

参数应该是:

  • 由我发送
  • 发送到不同的名字 f.ex. @ibm.com 或 @google.com 或 @facebook.com
  • 未抄送至@myspace.com 或@kitchen.com
  • 只发送邮件,不进行同步聊天或草稿邮件

我很难找到一个涵盖所有内容的完整公式。

【问题讨论】:

  • 我想将确定的电子邮件集合复制粘贴到另一个数据库,该数据库属于一个对多人开放的项目。因此存档在这里不是解决办法。
  • SELECT (@Contains(Author; "peter")) & (@Contains(ToNames; "@ibm.com")) | (@Contains(ToNames; "@google.com")) & (!@Contains(CopyTo; "myspace.com")) | (!@Contains(CopyTo; "kitchen.com"))

标签: email view selection formula lotus


【解决方案1】:

选择公式由检查内容的项目和用于组合不同查询的运算符组成。

此外,还有@Functions 来操作值以满足您的需求。

电子邮件的发件人在From- 项中。收件人可以在SendTo找到,复制收件人可以在CopyTo等。

您可以使用属性窗口 (Alt + Enter) 找到项目名称。在第二个选项卡上有特定文档中的所有项目。

要获取您的所有邮件,您可以编写如下内容:

SELECT From = "CN=YourName/OU=YourOrg"

对于精确值 -> 属性 - 窗口

要将所有邮件发送到特殊域,它会是:

SELECT @Contains( SendTo ; "@yahoo.com" ) | @Contains( SendTo ; "@google.com" )

@Contains 是@Function 之一。只需 google 即可获得完整列表。 Designer Help 是一个很好的参考。 由于@Formula-Language 对列表的处理非常强大,所以上面的例子也可以写成:

SELECT @Contains( SendTo ; "@yahoo.com" : "@google.com" )

冒号是列表操作符......

逻辑运算符有: | = 或 & = 与 ! = 不是

注意:&的优先级比|高,如果你想改变它,你需要用括号来纠正优先级...

如果您在邮件中写入地址的方式不同,那么您的操作可能需要一个“统一器”,例如 @Lowercase( ... )@Uppercase。一个有效的公式可能如下所示:

SELECT Form = "Memo" : "Reply" & From = "CN=YourName/OU=YourOrg" & 
@Contains( @LowerCase( SendTo ) ; "@yahoo.com" : "@google.com" ) &
!@Contains( @LowerCase( CopyTo ; "@myspace.com" )

根据您的需要随意修改

使用评论中的示例:

SELECT (@Contains(From; "peter")) & 
(@Contains(SendTo; "@ibm.com")) | (@Contains(SendTo; "@google.com")) & 
!(@Contains(CopyTo; "myspace.com") | @Contains(CopyTo; "kitchen.com"))

【讨论】:

  • 我再次尝试使用这些公式,但它不起作用。这三个作品中的每一个,即 From / ToNames / CopyTo 但不是全部在一起。如何像在 Excel 中一样将函数嵌套在一起必须有一个技巧。 SELECT (@Contains(Author; "peter")) & (@Contains(ToNames; "@ibm.com")) | (@Contains(ToNames; "@google.com")) & (!@Contains(CopyTo; "myspace.com")) | (!@Contains(CopyTo; "kitchen.com"))
  • 这是您的正确连接公式:SELECT @Contains(Author; "peter") & @Contains(ToNames; "@ibm.com" :"@google.com") & !@Contains(CopyTo; "myspace.com" : "kitchen.com") - 除了 Torsten 的提示之外,您还必须考虑“&”的优先级高于“|” - 这是您公式中的主要错误。因此,您的公式的长版本将是:SELECT @Contains(Author; "peter") & (@Contains(ToNames; "@ibm.com") | @Contains(ToNames; "@google.com")) & !(@Contains(CopyTo; "myspace.com") | @Contains(CopyTo; "kitchen.com"))
  • Lotus Notes 中没有项目ToNames,也没有(默认)项目Author...可能这就是选择不显示任何内容的原因...并且:`(! @Contains(CopyTo; "myspace.com" ) | !@Contains(CopyTo; "kitchen.com" )) 将为不包含“myspace.com”和“kitchen.com”的任何邮件返回 true。 ..
【解决方案2】:

我不会复制/粘贴...我会使用标准 Notes 归档,并带有多个公式。没有代理,没有编程(除了公式),还想要什么?

【讨论】:

  • 我想将确定的电子邮件集合复制粘贴到另一个数据库,该数据库属于一个对多人开放的项目。因此,存档在这里不是解决办法。
  • 如果启用全文搜索呢?如果您只需要这样做一次,最好务实一点。找到“正确”的方法来做这件事让我觉得事情过于复杂。
  • 我将不胜感激对我定义的请求的回答,而不是我所要求的小“修复”。任何人都知道如何将不同的字段功能放在同一个“视图选择”中。由我发送 + 发送到选择 + 未复制到。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-29
  • 1970-01-01
  • 2018-12-17
  • 2019-12-09
  • 1970-01-01
相关资源
最近更新 更多