Quickbooks报表查询请求一次有数量限制吗?
Is there a limit on the amount of Quickbooks report query requests at one time?
在 QBFC 中一次 added/returned 来自 MsgSetRequest
的报告查询数量是否有限制?
我目前正在创建多个 GeneralSummaryReportQuery
并将其添加到 MsgSetRequest
(比如说 30),但是在我执行请求之后,事情似乎出了问题。我可以看到 ResponseList
是正确的大小,但是在列表中的前 10 个 Response
之后,剩余响应的状态代码变为 3320
,这表明报告无法被生成。如果我 运行 具有相同过滤器且添加到请求中的查询较少的相同报告,则成功生成报告。
我已经阅读了 QBSDK ProGuide 一书并进行了一些谷歌搜索,但我没有在网上看到任何提及此限制的内容。
下面是一些示例代码,说明它的价值:
IMsgSetRequest msgSetReq = sessionManager.CreateMsgSetRequest("US", 13, 0);
msgSetReq.Attributes.OnError = ENRqOnError.roeContinue;
foreach (string key in traversalOrder) {
IGeneralSummaryReportQuery summaryReportQuery = msgSetReq.AppendGeneralSummaryReportQueryRq();
summaryReportQuery.GeneralSummaryReportType.SetValue(ENGeneralSummaryReportType.gsrtProfitAndLossByJob);
summaryReportQuery.ReportEntityFilter.ORReportEntityFilter.FullNameList.Add(tableData[key].FullName);
}
//Now do all the queries
IMsgSetResponse msgSetResp = sessionManager.DoRequests(msgSetReq);
for (int k = 0; k < msgSetResp.ResponseList.Count; k++) {
IResponse resp = msgSetResp.ResponseList.GetAt(k);
if (resp.StatusCode >= 0 && resp.Detail != null) {
//do stuff -- this only enters in the first 10 Responses in the ResponseList
}
}
我启用了详细日志记录并查看了日志 - 正在按预期以 XML 格式生成报告请求:
<GeneralSummaryReportQueryRq requestID = "9">
<GeneralSummaryReportType>ProfitAndLossByJob</GeneralSummaryReportType>
<ReportEntityFilter>
<FullName>TestGuy9</FullName>
</ReportEntityFilter>
</GeneralSummaryReportQueryRq>
<GeneralSummaryReportQueryRq requestID = "10">
<GeneralSummaryReportType>ProfitAndLossByJob</GeneralSummaryReportType>
<ReportEntityFilter>
<FullName>TestGuy10</FullName>
</ReportEntityFilter>
</GeneralSummaryReportQueryRq>
但是,在日志的更下方,我们看到报告生成失败,但没有说明原因。对于随后的任何剩余报告请求,这将继续。
20190919.103424 I 16112 QBSDKMsgSetHandler QUERY: General Summary Report
20190919.103424 D 16112 ReportStorage::DoQuery Processing request for report: ProfitAndLossByJob
20190919.103424 D 16112 ReportStorage::DoQuery Setting report type
20190919.103424 D 16112 ReportStorage::DoQuery Initializing report defaults
20190919.103424 D 16112 ReportStorage::DoQuery 1st override of defaults
20190919.103424 D 16112 ReportStorage::DoQuery Initializing report
20190919.103424 D 16112 ReportStorage::DoQuery 2nd override of defaults
20190919.103424 D 16112 ReportStorage::DoQuery Generating the report
20190919.103425 D 16112 ReportStorage::DoQuery Building the response
20190919.103425 D 16112 ReportHandler::BuildTheRetObject Number of column rows: 2
20190919.103425 D 16112 ReportStorage::DoQuery Finished building the response
20190919.103425 I 16112 QBSDKMsgSetHandler Request 9 completed successfully.
20190919.103425 I 16112 QBSDKMsgSetHandler QUERY: General Summary Report
20190919.103425 D 16112 ReportStorage::DoQuery Processing request for report: ProfitAndLossByJob
20190919.103425 D 16112 ReportStorage::DoQuery Setting report type
20190919.103425 D 16112 ReportStorage::DoQuery Initializing report defaults
20190919.103425 D 16112 ReportStorage::DoQuery 1st override of defaults
20190919.103425 D 16112 ReportStorage::DoQuery Initializing report
20190919.103425 D 16112 ReportStorage::DoQuery 2nd override of defaults
20190919.103425 D 16112 ReportStorage::DoQuery Generating the report
20190919.103425 E 16112 ReportHandler::GenerateReport Unable to generate the report
20190919.103425 I 16112 QBSDKMsgSetHandler Request 10 failed.
我想出了一种方法将我想要的多个报告压缩成一个大报告,但这是一种解决方法,并不总是可行的解决方案。
似乎每个响应有 10 个报告限制,因此这里的解决方案是分批进行 10 个报告。如果有人发现其他问题,我很乐意将其标记为正确回答。
在 QBFC 中一次 added/returned 来自 MsgSetRequest
的报告查询数量是否有限制?
我目前正在创建多个 GeneralSummaryReportQuery
并将其添加到 MsgSetRequest
(比如说 30),但是在我执行请求之后,事情似乎出了问题。我可以看到 ResponseList
是正确的大小,但是在列表中的前 10 个 Response
之后,剩余响应的状态代码变为 3320
,这表明报告无法被生成。如果我 运行 具有相同过滤器且添加到请求中的查询较少的相同报告,则成功生成报告。
我已经阅读了 QBSDK ProGuide 一书并进行了一些谷歌搜索,但我没有在网上看到任何提及此限制的内容。
下面是一些示例代码,说明它的价值:
IMsgSetRequest msgSetReq = sessionManager.CreateMsgSetRequest("US", 13, 0);
msgSetReq.Attributes.OnError = ENRqOnError.roeContinue;
foreach (string key in traversalOrder) {
IGeneralSummaryReportQuery summaryReportQuery = msgSetReq.AppendGeneralSummaryReportQueryRq();
summaryReportQuery.GeneralSummaryReportType.SetValue(ENGeneralSummaryReportType.gsrtProfitAndLossByJob);
summaryReportQuery.ReportEntityFilter.ORReportEntityFilter.FullNameList.Add(tableData[key].FullName);
}
//Now do all the queries
IMsgSetResponse msgSetResp = sessionManager.DoRequests(msgSetReq);
for (int k = 0; k < msgSetResp.ResponseList.Count; k++) {
IResponse resp = msgSetResp.ResponseList.GetAt(k);
if (resp.StatusCode >= 0 && resp.Detail != null) {
//do stuff -- this only enters in the first 10 Responses in the ResponseList
}
}
我启用了详细日志记录并查看了日志 - 正在按预期以 XML 格式生成报告请求:
<GeneralSummaryReportQueryRq requestID = "9">
<GeneralSummaryReportType>ProfitAndLossByJob</GeneralSummaryReportType>
<ReportEntityFilter>
<FullName>TestGuy9</FullName>
</ReportEntityFilter>
</GeneralSummaryReportQueryRq>
<GeneralSummaryReportQueryRq requestID = "10">
<GeneralSummaryReportType>ProfitAndLossByJob</GeneralSummaryReportType>
<ReportEntityFilter>
<FullName>TestGuy10</FullName>
</ReportEntityFilter>
</GeneralSummaryReportQueryRq>
但是,在日志的更下方,我们看到报告生成失败,但没有说明原因。对于随后的任何剩余报告请求,这将继续。
20190919.103424 I 16112 QBSDKMsgSetHandler QUERY: General Summary Report
20190919.103424 D 16112 ReportStorage::DoQuery Processing request for report: ProfitAndLossByJob
20190919.103424 D 16112 ReportStorage::DoQuery Setting report type
20190919.103424 D 16112 ReportStorage::DoQuery Initializing report defaults
20190919.103424 D 16112 ReportStorage::DoQuery 1st override of defaults
20190919.103424 D 16112 ReportStorage::DoQuery Initializing report
20190919.103424 D 16112 ReportStorage::DoQuery 2nd override of defaults
20190919.103424 D 16112 ReportStorage::DoQuery Generating the report
20190919.103425 D 16112 ReportStorage::DoQuery Building the response
20190919.103425 D 16112 ReportHandler::BuildTheRetObject Number of column rows: 2
20190919.103425 D 16112 ReportStorage::DoQuery Finished building the response
20190919.103425 I 16112 QBSDKMsgSetHandler Request 9 completed successfully.
20190919.103425 I 16112 QBSDKMsgSetHandler QUERY: General Summary Report
20190919.103425 D 16112 ReportStorage::DoQuery Processing request for report: ProfitAndLossByJob
20190919.103425 D 16112 ReportStorage::DoQuery Setting report type
20190919.103425 D 16112 ReportStorage::DoQuery Initializing report defaults
20190919.103425 D 16112 ReportStorage::DoQuery 1st override of defaults
20190919.103425 D 16112 ReportStorage::DoQuery Initializing report
20190919.103425 D 16112 ReportStorage::DoQuery 2nd override of defaults
20190919.103425 D 16112 ReportStorage::DoQuery Generating the report
20190919.103425 E 16112 ReportHandler::GenerateReport Unable to generate the report
20190919.103425 I 16112 QBSDKMsgSetHandler Request 10 failed.
我想出了一种方法将我想要的多个报告压缩成一个大报告,但这是一种解决方法,并不总是可行的解决方案。
似乎每个响应有 10 个报告限制,因此这里的解决方案是分批进行 10 个报告。如果有人发现其他问题,我很乐意将其标记为正确回答。