как я могу получить следующий набор товаров из crm.lead.метод списка?

#php #rest #bitrix

Вопрос:

Я пытаюсь создать список потенциальных клиентов из более чем 50 позиций, поэтому я сталкиваюсь с ограничением метода списка. На учебном сайте я уже обнаружил, что мне нужно позвонить, чтобы получить следующий набор, но я не нашел упоминания о том, как это должно быть сделано в php, все примеры написаны на javascript, так что это не поможет.

Текущие вызовы метода я пытался заставить его работать, но в результате получаю только один и тот же набор:

 $fistSet = CRest::call("crm.lead.list", [
  "order"=> [ "ID"=> "ASC" ],
  "filter"=> [ "UF_CRM_1600929716160"=> 632],
  "select"=> [ "ID", "TITLE", "STATUS_ID", "OPPORTUNITY", "CURRENCY_ID" ]
]);
echo "<pre>";
var_dump($fistSet);
echo "</pre>";
echo "<br>----------------------------------------------------------------------------------------------------------------------------------------------------------------------------<br>";
$total = $firstSet["total"];
$next = $firstSet["next"];
$secondSet = CRest::call("crm.lead.list", [
  "order"=> [ "ID"=> "ASC" ],
  "filter"=> [ "UF_CRM_1600929716160"=> 632], "OFFSET"=>$next,
  "select"=> [ "ID", "TITLE", "STATUS_ID", "OPPORTUNITY", "CURRENCY_ID" ]
]);
echo "<pre>";
var_dump($secondSet);
echo "</pre>";
 

Комментарии:

1. Похоже, это не вопрос PHP, а скорее вопрос, касающийся конкретного стороннего API и того, как они обрабатывают разбиение на страницы. Я бы предложил проверить их документацию, чтобы узнать, как они обрабатывают разбиение на страницы в последующих запросах.

2. Я добавил тег php, потому что это сделано на php. Также я проверил документацию, и там написано «что мне нужно указать значение в поле «далее», чтобы получить следующий набор

Ответ №1:

Предполагая, что это для Bitrix, в их документации говорится, что ответ от next должен быть передан в start свойстве в вашем следующем запросе. Так что поменяйтесь offset start местами .