在QuickBooks Desktop中,我有一个库存项目,其中包含一个名为code的自定义字段。代码的值是12345.我需要提取自定义字段代码为12345的库存项目。
这是我的XML:
<?xml version="1.0" encoding="utf-8"?><ItemConsolidatedQuery xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.intuit.com/sb/cdm/v2"><CustomFieldEnable>true</CustomFieldEnable><NameContains>temple</NameContains></ItemConsolidatedQuery>
我知道该项目的名称,所以我尝试通过它进行查询。有3个具有相同名称的项目,因此我稍后尝试查询它们。我无法看到任何自定义字段数据:
我知道自定义字段存在。这是我的C#代码:
Intuit.Ipp.Data.Qbd.ItemConsolidatedQuery itQuery = new Intuit.Ipp.Data.Qbd.ItemConsolidatedQuery();
itQuery.NameContains = "temple";
itQuery.CustomFieldEnable = true;
itQuery.CustomFieldEnableSpecified = true;
itQuery.CustomFieldFilter = Intuit.Ipp.Data.Qbd.customFieldFilterEnumType.Include;
var itemsList = itQuery.ExecuteQuery<Intuit.Ipp.Data.Qbd.ItemConsolidated>(ds.ServiceContext);
在QBD中查询自定义字段是否有C#示例?
答案 0 :(得分:1)
您是否尝试添加此行:
itQuery.CustomFieldFilterSpecified = true;
此外,QB中的自定义字段由OwnerID保护。可能必须在itQuery.CustomFieldQueryParam中指定theOwnerID;我还没有尝试过它。
答案 1 :(得分:0)
需要在请求中包含OwnerIDList。有关示例,请参阅OSR。