当我通过api(sales_order.list)调用订单列表时,我可以按AND条件过滤列表,但不能按OR条件过滤列表。我需要添加一个这样的过滤器:获取所有在X日创建或更新的订单。
Magento文档提供了一个AND过滤器的示例($ updatefilter = array(array(some(=)条件,someOther =>条件))),并且这些方法有效。我找不到任何关于OR条件的示例,因此我尝试使用与过滤集合时使用的相同代码,但它们似乎都不起作用
因此,这是AND条件,可以正常工作:
$filters = array(array(
'status' => array('eq' => 'processing'),
'increment_id' => array('nlike' => "1%")
));
$list = $client->call($session, "sales_order.list", $filters);
这些是我尝试创建和条件的一些尝试,但均无效果:
$filters = array(array(
array('created_at' => array('like'=>"$date%")),
array('updated_at' => array('like'=>"$date%")),
));
$filters = array(
array('created_at' => array('like'=>"$date%")),
array('updated_at' => array('like'=>"$date%")),
);
$filters = array(array(
array('attribute' => 'created_at', 'like'=>"$date%"),
array('attribute' => 'updated_at', 'like'=>"$date%"),
));
$filters = array(
array('attribute' => 'created_at', 'like'=>"$date%"),
array('attribute' => 'updated_at', 'like'=>"$date%"),
);
基本上,我需要的是在特定日期创建或更新的订单列表。到目前为止,我尝试过的所有尝试都会给我AND过滤器或sql错误,因为magento无法看到属性并使用索引来执行查询(因此查询变为“ WHERE(像'created_at'这样的'0')),而不是是“创建日期”(例如$ date)的地方
有没有一种方法可以过滤带有OR条件的肥皂呼叫?