Acumatica SOAP 中的通配符搜索 API 导出过滤器

Wildcard search in Acumatica SOAP API export filter

我正在尝试使用 Acumatica 网络服务 "Export" 从屏幕 CR302000(组织 > 客户管理 > 联系人)。

使用具有 FilterCondition.Contain 条件的过滤器,我可以将结果限制为仅具有包含特定字符串的 Phone1 字段的结果。

现在我希望过滤的 phone 号码包含通配符。在 Web 界面中使用 % 作为通配符是可行的。但是当使用网络服务时,这不起作用(没有返回行)。

我的过滤器:

Filter[] filters = new Filter[]
{
    new Filter()
    {
        Field = new Field()
        {
            FieldName = context.DetailsContact.Phone1.FieldName,
            ObjectName = context.DetailsContact.Phone1.ObjectName
        },
        Condition = FilterCondition.Contain,
        Operator = FilterOperator.And,
        Value = "283%9534"
    }
}

在 SOAP 请求中变成这样:

<Filter>
    <Field>
        <FieldName>Phone1</FieldName>
        <ObjectName>ContactCurrent: 1</ObjectName>
    </Field>
    <Condition>Contain</Condition>
    <Value xsi:type="xsd:string">283%9534</Value>
    <OpenBrackets>0</OpenBrackets>
    <CloseBrackets>0</CloseBrackets>
    <Operator>And</Operator>
</Filter>

有谁知道是否可以使用 Web 服务实现通配符过滤 API?

更新: 如果我不包含 ContactSummary.ServiceCommands.EveryContactID 命令,% 通配符几乎可以工作。它 returns 恰好有一个匹配通配符搜索的结果。但我需要每个匹配的结果,这就是为什么我包含 EveryContactID

更新 2: 使用 LeadSummary.ServiceCommands.EveryLeadID 命令,通配符适用于屏幕 CR301000(线索)。这是 CR302000 中的错误吗?

更新 3: 总结已接受答案的评论中的对话,CR301 和 CR302 都应该能够通过带有通配符的联系电话 phone 进行过滤,但由于一些未知的错误,CR302 不能使用通配符。

发生这种情况是因为您试图过滤不属于主视图的字段。在 CR301000(潜在客户)中,联系人 主视图,因此您的过滤器有效。此处提供了对此的更多解释: