使用联系人中自定义日期时间字段的过滤器进行兑换

发布于 2024-08-30 10:01:45 字数 668 浏览 10 评论 0原文

我在联系人中的自定义日期上使用过滤器时遇到问题。

RDOItems Contacts = null;
string strSearch = string.Empty;

strSearch = AddQuotes("http://schemas.microsoft.com/mapi/string/{01234567-8901-2345-C678-901234567801}/CustomFieldString");

strSearch += " <> '' ";

strSearch += " AND ";
strSearch +=  AddQuotes("http://schemas.microsoft.com/mapi/string/{01234567-8901-2345-C678-901234567802}/CustomFieldDate");
strSearch += " < ";
strSearch += "'2010-04-28 18:00'";                                 

Contacts = (RDOItems)synContacts.Items.Restrict(strSearch)

当我仅使用过滤器的第一部分(自定义字段字符串)时,我会得到正确的联系人,但是当我使用日期时间字段扩展过滤器时,不会返回任何联系人。

谢谢,

斯皮杰

I'm having a problem using a filter on a custom date in contacts.

RDOItems Contacts = null;
string strSearch = string.Empty;

strSearch = AddQuotes("http://schemas.microsoft.com/mapi/string/{01234567-8901-2345-C678-901234567801}/CustomFieldString");

strSearch += " <> '' ";

strSearch += " AND ";
strSearch +=  AddQuotes("http://schemas.microsoft.com/mapi/string/{01234567-8901-2345-C678-901234567802}/CustomFieldDate");
strSearch += " < ";
strSearch += "'2010-04-28 18:00'";                                 

Contacts = (RDOItems)synContacts.Items.Restrict(strSearch)

When i use only the first part of the filter (CustomFieldString) i get the right contacts, but when i expand the filter with the datetime field no contacts are returned.

Thanks,

Spitje

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

如果指定的 MAPI 属性具有字符串作为 anid(与整数相反),则无法在 DASL 名称中指定属性类型,因此赎回假定为字符串。

如果属性已添加到文件夹字段,则属性定义将存储在该文件夹中的隐藏消息中,并且您可以仅使用属性名称 (CustomFieldDate)
否则,您可以调用 GetIdsFromNames 来找出属性标记,“或”使用适当的类型 (PT_SYSTIME),然后构建看起来像常规(未命名)MAPI 属性的 DASL 名称:

例如 http://schemas.microsoft.com/mapi/proptag/0x80650040< /b>

德米特里·斯特雷布莱琴科 (MVP)
http://www.dimastr.com/
OutlookSpy - Outlook,CDO
和 MAPI 开发人员工具

If the named MAPI property has a string as anid (as oppoosed to an integer), there is no way to specify the property type in the DASL name, so Redemption assumes string.

If the property was added to the folder fields, the property definition will be stored in a hidden message in that folder, and you can use just the property name (CustomFieldDate)
Otherwise you can you call GetIdsFromNames to figure out the property tag, "or" it with the appropriate type (PT_SYSTIME), then contruct the DASL name that looks like a regular (not named) MAPI property:

e.g. http://schemas.microsoft.com/mapi/proptag/0x80650040

Dmitry Streblechenko (MVP)
http://www.dimastr.com/
OutlookSpy - Outlook, CDO
and MAPI Developer Tool

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文