Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/248.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
如何确定Magento中的订购项目是否在php脚本中有库存?_Php_Magento - Fatal编程技术网

如何确定Magento中的订购项目是否在php脚本中有库存?

如何确定Magento中的订购项目是否在php脚本中有库存?,php,magento,Php,Magento,我需要找出一个自动履行/报告php脚本,看看订购的商品在购买时是否有库存 我最初考虑使用具有“缺货状态”的物品Staus,但在创建发票时会覆盖它,在我们的情况下,这总是直接发生的,因为我们的付款方式是这样配置的 我查看了sales\u flat\u order\u item表,我想到的唯一解决方案是,是否可以使用Quantity\u Backorder字段来检查该项目最初是否延期,但我不确定这是否是一种可靠的方法 如何以安全的方式执行此操作?创建一个新文件并在magento根目录中使用此文件 M

我需要找出一个自动履行/报告php脚本,看看订购的商品在购买时是否有库存

我最初考虑使用具有“缺货状态”的物品Staus,但在创建发票时会覆盖它,在我们的情况下,这总是直接发生的,因为我们的付款方式是这样配置的

我查看了sales\u flat\u order\u item表,我想到的唯一解决方案是,是否可以使用Quantity\u Backorder字段来检查该项目最初是否延期,但我不确定这是否是一种可靠的方法


如何以安全的方式执行此操作?

创建一个新文件并在magento根目录中使用此文件

Magento获得所有数量大于0且库存中仍然缺货的简单产品

<?php
require_once('app/Mage.php');
umask(0);
Mage::app('admin');
set_time_limit(0);

$productCollection = Mage::getModel('catalog/product')
 ->getCollection()
 ->addAttributeToSelect('*')
 ->joinField('qty',
             'cataloginventory/stock_item',
             'qty',
             'product_id=entity_id',
             '{{table}}.is_in_stock=0',
             'left')
 ->addAttributeToFilter('qty', array("gt" => 0));

echo "<h2>Simple Products with >0 quantity and Out of Stock</h2>";
foreach($productCollection as $product) { //print_r($product->getData());exit;
if($product->getTypeId() == 'simple')
    echo $product->getName() . " | " . $product->getSku() . "<br>";
}
echo 'Done';
?>


是的,您可以这样做。请编辑您的问题并告诉我们您已经尝试了什么。对不起,这不是我问题的答案!我明确要求订购物品,这意味着我需要知道订购物品在购买时是否有库存,而不是产品是否有库存。你试过什么吗?