0

QBFC12。

我正在查询桌面版 QB 中的客户列表。从这里我得到一个 ICustomerRet 对象。

在没有设置 MiddleName 的情况下,这些失败是因为对象什么都不是:

  • 如果 ICustomerRetObj.MiddleName.IsSet 然后...
  • 如果 ICustomerRetObj.MiddleName.IsEmpty 然后...

这确实有效:

  • 如果 ICustomerRetObj.MiddleName 不是什么,那么...

我找不到任何有关 IsSet 和 IsEmpty 的文档,并且在搜索 QBSDK 程序员指南时找不到它们。

这些方法实际上做了什么?

问候,瑞克

4

1 回答 1

0

我唯一一次使用过这些功能是在执行 Add 或 Mod 请求时。在响应中,如果该字段没有值,则该对象将为空。由于对象为空,因此不能调用 IsSet 或 IsEmpty 函数。

这是我在检查空值时所做的:

if(iCustomerRet.FirstName != null) FirstName = iCustomerRet.FirstName.GetValue();
if(iCustomerRet.MiddleName != null) MiddleName = iCustomerRet.MiddleName.GetValue();
if(iCustomerRet.LastName != null) LastName = iCustomerRet.LastName.GetValue();

我认为这可能与 QBFC 是 XML 的包装器有关。转换为空 XLM 节点与将其设置为空可能与这些函数有关。

于 2013-09-20T17:03:26.323 回答