Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用ConsoleByte PHP Quickbooks DevKit,InvoiceServices查询返回false_Php_Quickbooks Online - Fatal编程技术网

使用ConsoleByte PHP Quickbooks DevKit,InvoiceServices查询返回false

使用ConsoleByte PHP Quickbooks DevKit,InvoiceServices查询返回false,php,quickbooks-online,Php,Quickbooks Online,我使用了以下过程: 我创建了一个跨越90天的发票数组,从今天到90天前。 我将这些发票转换成逗号分隔的字符串$invoiceString,每个数字周围都有一个引号 使用$InvoiceService=新QuickBooks\u IPP\u服务\u发票;创建新的InvoiceService对象。 创建以下查询以从我们的QB检索发票批次: $invoices=$InvoiceService->查询$Context,$realm,从DocNumber所在的发票中选择*$发票字符串。MAXRESULTS

我使用了以下过程:

我创建了一个跨越90天的发票数组,从今天到90天前。 我将这些发票转换成逗号分隔的字符串$invoiceString,每个数字周围都有一个引号 使用$InvoiceService=新QuickBooks\u IPP\u服务\u发票;创建新的InvoiceService对象。 创建以下查询以从我们的QB检索发票批次: $invoices=$InvoiceService->查询$Context,$realm,从DocNumber所在的发票中选择*$发票字符串。MAXRESULTS 1000; 这将返回false。但是,如果我将首次收集发票号码的时间范围限制为60天或更少,则它会工作,但61天或更多,并且返回false。查询返回的天数是否有硬限制?我在询问中遗漏了吗

提前感谢您的帮助

编辑

以下是包含调试语句时收到的错误代码:

错误:3100:[消息=InternalServerError;错误代码=003100;状态代码=500,]

响应:HTTP/1.1 500服务器错误服务器:nginx日期:2017年4月13日星期四14:40:44 GMT内容类型:文本/xml内容长度:350连接:保持活动保持活动:超时=5消息=InternalServerError;错误代码=003100;状态代码=500

我不知道你在问什么问题。我已经包含了使用InvoiceServices对象发送的查询。以前的任何SQL查询都只是用来创建我在InvoiceService批处理查询中使用的invoiceString。该查询只返回一个大约368个发票号的数组,然后我使用该数组创建发票字符串,以逗号分隔,每个发票号都用单引号括起来


在我能找到的任何错误代码列表中,我都找不到错误代码3100。

请查看示例,这些示例向您展示了如何调试如下问题:

print('RESPONSE: <code>' . htmlspecialchars($BillService->lastResponse()) . '</code><br><br><br>');
print('ERROR: ' . $BillService->lastError());
具体而言,您可以通过以下方式查看Intuit的原始响应:

print('RESPONSE: <code>' . htmlspecialchars($BillService->lastResponse()) . '</code><br><br><br>');
print('ERROR: ' . $BillService->lastError());
最后一个错误是这样的:

print('RESPONSE: <code>' . htmlspecialchars($BillService->lastResponse()) . '</code><br><br><br>');
print('ERROR: ' . $BillService->lastError());

另外,如果您发布了一个正在运行的SQL查询的实际示例,这将非常有用,这样我们就可以尝试重现这个问题

你有没有检查过它是否记录了一个我不熟悉语法的错误?查询引擎不支持日期之间、间隔90天和CURDATE吗?我的另一个猜测是字符串可能太长了。但这应该显示在日志中。这不是有效的SQL查询:请从DocNumber所在的发票中选择*$发票字符串。它是SQL查询的一部分,但我们确实无法确切地告诉您正在做什么,也无法复制它,因为我们看不到$invoiceString设置为什么。在任何情况下,如果您确定您的SQL查询是有效的,您应该向Intuit提交一份支持票证-这是一个来自Intuit服务器的错误,正如您在回答中所看到的。我已按原始问题编辑以回答此问题。谢谢你的帮助。