制限を使用して実行できるようには見えません (さらに、レコードの総数を知る必要があり、API にはそのためのメソッドがないため、すべてのレコードを取得するには複雑なページネーション ロジックを実行する必要があります)。 API 呼び出しリスト @ http://www.magentocommerce.com/api/soap/sales/salesOrder/sales_order.list.htmlを参照してください。
しかし、回避策としてできることは、複雑なフィルターを使用して、作成日に基づいて結果セットを制限することです。(注文量に基づいて、時間、日、または週ごとに調整します)。
また、ステータスタイプを使用しているため (注文をキャンセルするだけのものを除外していると仮定して)、すべての注文を取得し、order_id/status をローカルで追跡することを検討する必要がある場合があります (上記のステータスのもののみを処理します)。処理されなかった残りの部分は、後で注意が必要になる可能性のあるオーダー ID のリストです。
疑似コードの例
$params = array(array(
'filter' => array(
array(
'key' => 'status',
'value' => array(
'key' => 'in',
'value' => $orderstatusarray,
),
),
),
'complex_filter' => array(
array(
'key' => 'created_at',
'value' => array(
'key' => 'gteq',
'value' => '2012-11-25 12:00:00'
),
),
array(
'key' => 'created_at',
'value' => array(
'key' => 'lteq',
'value' => '2012-11-26 11:59:59'
),
),
)
));
$orderListRaw = $proxy -> call ( $sessionId, 'sales_order.list', $params);
フィルタリングの詳細については、@ http://www.magentocommerce.com/knowledge-base/entry/magento-for-dev-part-8-varien-data-collectionsをご覧ください。