QuickBooks 查询 - 存款查询
QuickBooks Query - Deposit Query
我是 Quickbooks 与 C# 集成的新手,我运行使用以下代码来请求具有特定时间范围的 DepositQuery,如下所示:
string DepositQueryRq = @"<?xml version =""1.0"" encoding=""utf-8""?>
<?qbxml version=""2.0""?>
<QBXML>
<QBXMLMsgsRq onError = ""stopOnError"">
<DepositQueryRq requestID = ""[reqID]"" />
<TxnDateRangeFilter>
<FromTxnDate>2018-03-14</FromTxnDate>
</TxnDateRangeFilter>
</QBXMLMsgsRq>
</QBXML>".Replace("[reqID]", Guid.NewGuid().ToString("B"));
string res = RequestHandler.Process(DepositQueryRq);
它 returns 以下消息:
QuickBooks 在解析提供的 XML 文本流时发现错误。
我是 运行 相同的查询,但没有日期说明符,它 returns 所有存款的列表
string DepositQueryRq = @"<?xml version =""1.0"" encoding=""utf-8""?>
<?qbxml version=""2.0""?>
<QBXML>
<QBXMLMsgsRq onError = ""stopOnError"">
<DepositQueryRq requestID = ""[reqID]"" />
</QBXMLMsgsRq>
</QBXML>".Replace("[reqID]", Guid.NewGuid().ToString("B"));
string res = RequestHandler.Process(DepositQueryRq);
解决方案是像这样在查询的主体中添加 TimeFilter:
string DepositQueryRq = @"<?xml version =""1.0"" encoding=""utf-8""?>
<?qbxml version=""2.0""?>
<QBXML>
<QBXMLMsgsRq onError = ""stopOnError"">
<DepositQueryRq requestID = ""[reqID]"">
<TxnDateRangeFilter>
<FromTxnDate>2018-03-14</FromTxnDate>
<ToTxnDate>2018-03-28</ToTxnDate>
</TxnDateRangeFilter>
</DepositQueryRq>
</QBXMLMsgsRq>
</QBXML>".Replace("[reqID]", Guid.NewGuid().ToString("B"));
或
string DepositQueryRq = @"<?xml version =""1.0"" encoding=""utf-8""?>
<?qbxml version=""2.0""?>
<QBXML>
<QBXMLMsgsRq onError = ""stopOnError"">
<DepositQueryRq requestID = ""[reqID]"">
<ModifiedDateRangeFilter>
<FromModifiedDate>2018-03-13T10</FromModifiedDate>
<ToModifiedDate>2018-03-28T5</ToModifiedDate>
</ModifiedDateRangeFilter>
</DepositQueryRq>
</QBXMLMsgsRq>
</QBXML>".Replace("[reqID]", Guid.NewGuid().ToString("B"));
我是 Quickbooks 与 C# 集成的新手,我运行使用以下代码来请求具有特定时间范围的 DepositQuery,如下所示:
string DepositQueryRq = @"<?xml version =""1.0"" encoding=""utf-8""?>
<?qbxml version=""2.0""?>
<QBXML>
<QBXMLMsgsRq onError = ""stopOnError"">
<DepositQueryRq requestID = ""[reqID]"" />
<TxnDateRangeFilter>
<FromTxnDate>2018-03-14</FromTxnDate>
</TxnDateRangeFilter>
</QBXMLMsgsRq>
</QBXML>".Replace("[reqID]", Guid.NewGuid().ToString("B"));
string res = RequestHandler.Process(DepositQueryRq);
它 returns 以下消息: QuickBooks 在解析提供的 XML 文本流时发现错误。
我是 运行 相同的查询,但没有日期说明符,它 returns 所有存款的列表
string DepositQueryRq = @"<?xml version =""1.0"" encoding=""utf-8""?>
<?qbxml version=""2.0""?>
<QBXML>
<QBXMLMsgsRq onError = ""stopOnError"">
<DepositQueryRq requestID = ""[reqID]"" />
</QBXMLMsgsRq>
</QBXML>".Replace("[reqID]", Guid.NewGuid().ToString("B"));
string res = RequestHandler.Process(DepositQueryRq);
解决方案是像这样在查询的主体中添加 TimeFilter:
string DepositQueryRq = @"<?xml version =""1.0"" encoding=""utf-8""?>
<?qbxml version=""2.0""?>
<QBXML>
<QBXMLMsgsRq onError = ""stopOnError"">
<DepositQueryRq requestID = ""[reqID]"">
<TxnDateRangeFilter>
<FromTxnDate>2018-03-14</FromTxnDate>
<ToTxnDate>2018-03-28</ToTxnDate>
</TxnDateRangeFilter>
</DepositQueryRq>
</QBXMLMsgsRq>
</QBXML>".Replace("[reqID]", Guid.NewGuid().ToString("B"));
或
string DepositQueryRq = @"<?xml version =""1.0"" encoding=""utf-8""?>
<?qbxml version=""2.0""?>
<QBXML>
<QBXMLMsgsRq onError = ""stopOnError"">
<DepositQueryRq requestID = ""[reqID]"">
<ModifiedDateRangeFilter>
<FromModifiedDate>2018-03-13T10</FromModifiedDate>
<ToModifiedDate>2018-03-28T5</ToModifiedDate>
</ModifiedDateRangeFilter>
</DepositQueryRq>
</QBXMLMsgsRq>
</QBXML>".Replace("[reqID]", Guid.NewGuid().ToString("B"));