Перебор всех контрагентов

Комментарии

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

  • Юрий

    Бодрое утро, Павел.

    Попробуйте поиграться с параметром limit. Поставьте, например 10.

    https://online.moysklad.ru/api/remap/1.2/entity/counterparty/?order=created,asc&offset=0&limit=10

    https://online.moysklad.ru/api/remap/1.2/entity/counterparty/?order=created,asc&offset=10&limit=10

    ...

    https://online.moysklad.ru/api/remap/1.2/entity/counterparty/?order=created,asc&offset=509990&limit=10

    Посмотрите, как зависит время на выполнения скрипта от limit. И выберите комфортное. Максимальное limit=100.

    0
    Действия с комментариями Постоянная ссылка
  • Павел

    Юрий,спасибо за ответ.

    Я не зря указал число в 510000 записей, представьте сколько я буду по времени их перебирать если поставить лимит в 10?) 

    в 1.2 максимальный лимит в 1000.

    0
    Действия с комментариями Постоянная ссылка
  • Добрый день!

     

    1. Есть возможность добавить в запрос фильтрацию по времени создания контрагента. Это параметр created. Можно получить как сразу всех контрагентов, так и забирать частями меняя условия фильтрации.

    2. К сожалению, это сделать невозможно.

    0
    Действия с комментариями Постоянная ссылка
  • Павел

    Максим, добрый день.

    1. Вы точно говорите про report/counterparty? Я сколько ни пытался - не смог. В документации не описаны такие возможности.

    Если вы говорите про entity/counterparty, то там то понятно, что можно отсортировать. Но такой подход увеличивает время перебора всех контрагентов, т.к. выборка 1000 единиц занимает больше минуты(видимо там подтягивает кучу всего), да еще потом делаешь запрос по отчету прибыльности. При условии, что у нас больше 500000 контрагентов, время на обработку получается приличное.

    0
    Действия с комментариями Постоянная ссылка

Войдите в службу, чтобы оставить комментарий.