QuickBooks API - 查询 SalesItemLineDetail
QuickBooks API - query SalesItemLineDetail
我正在使用 PHP API 在 QB 中创建发票。 DetailType
是必需的,因此我添加了 $Line->setDetailType('SalesItemLineDetail');
,就像 https://github.com/consolibyte/quickbooks-php/blob/master/docs/partner_platform/example_app_ipp_v3/example_invoice_add.php#L21 中的示例一样。
然后设置
$SalesItemLineDetail = new QuickBooks_IPP_Object_SalesItemLineDetail();
$SalesItemLineDetail->setItemRef('8');
$SalesItemLineDetail->setUnitPrice(20 * 0.516129);
$SalesItemLineDetail->setQty(1.00000);
请注意 setItemRef
被硬编码为 8。
现在我想按名称搜索 SalesItemLineDetail
并获取参考。
只是想看看我是否能得到所有我尝试过的东西,
$pref->query($Context, $realm, "SELECT * FROM SalesItemLineDetail");
通常我们 query
提供服务。在我的例子中是 $pref
。
我试过了,InvoiceService
、SalesOrderService
、PreferencesService
、ItemService
,但我没有得到任何结果。
请帮我按名称在 Invoice
中找到一个 Product / Service
并获取它的引用。
提前致谢
您不能按 SalesLineItemDetail
搜索。 Intuit 不支持它。
如果您只想在现有发票中查找 ItemRef
,您可以先查询发票:
$list = $InvoiceService->query($Context, $realm, "SELECT *, Line.* FROM Invoice WHERE Id = '5' ");
然后遍历订单项以获取数据:
for ($i = 0; $i < $num_lines; $i++)
{
$Line = $Invoice->getLine($i);
if ($Line->getDetailType() == 'SalesItemLineDetail')
{
$Detail = $Line->getSalesItemLineDetail();
$item_id = $Detail->getItemRef();
}
}
我想出来了!
我们需要的是ItemService
。我就是这样做的。
$ItemService = new \QuickBooks_IPP_Service_Item();
$response = $ItemService->query($Context, $realm, "SELECT * FROM Item where Name = 'Services'");
从 $response
我得到了 ID。这样我就不需要硬编码任何 ID。
希望这可以帮助遇到此问题的任何人。
我正在使用 PHP API 在 QB 中创建发票。 DetailType
是必需的,因此我添加了 $Line->setDetailType('SalesItemLineDetail');
,就像 https://github.com/consolibyte/quickbooks-php/blob/master/docs/partner_platform/example_app_ipp_v3/example_invoice_add.php#L21 中的示例一样。
然后设置
$SalesItemLineDetail = new QuickBooks_IPP_Object_SalesItemLineDetail();
$SalesItemLineDetail->setItemRef('8');
$SalesItemLineDetail->setUnitPrice(20 * 0.516129);
$SalesItemLineDetail->setQty(1.00000);
请注意 setItemRef
被硬编码为 8。
现在我想按名称搜索 SalesItemLineDetail
并获取参考。
只是想看看我是否能得到所有我尝试过的东西,
$pref->query($Context, $realm, "SELECT * FROM SalesItemLineDetail");
通常我们 query
提供服务。在我的例子中是 $pref
。
我试过了,InvoiceService
、SalesOrderService
、PreferencesService
、ItemService
,但我没有得到任何结果。
请帮我按名称在 Invoice
中找到一个 Product / Service
并获取它的引用。
提前致谢
您不能按 SalesLineItemDetail
搜索。 Intuit 不支持它。
如果您只想在现有发票中查找 ItemRef
,您可以先查询发票:
$list = $InvoiceService->query($Context, $realm, "SELECT *, Line.* FROM Invoice WHERE Id = '5' ");
然后遍历订单项以获取数据:
for ($i = 0; $i < $num_lines; $i++)
{
$Line = $Invoice->getLine($i);
if ($Line->getDetailType() == 'SalesItemLineDetail')
{
$Detail = $Line->getSalesItemLineDetail();
$item_id = $Detail->getItemRef();
}
}
我想出来了!
我们需要的是ItemService
。我就是这样做的。
$ItemService = new \QuickBooks_IPP_Service_Item();
$response = $ItemService->query($Context, $realm, "SELECT * FROM Item where Name = 'Services'");
从 $response
我得到了 ID。这样我就不需要硬编码任何 ID。
希望这可以帮助遇到此问题的任何人。