Описание

Этот раздел содержит PHP-решение для получения записей складского учета в Битрикс24.

Пример использования

// Пример кода для Получение записей складского учета
// INPUT - получение переменных (если применимо)
// $inventoryId = $this->GetRootActivity()->GetVariable("InventoryID"); // Пример получения ID склада

// FILTER - построение условий для получения записей складского учета
$filter = [
    // 'ID' => $inventoryId, // Фильтр по ID склада, если он передается
    'ACTIVE' => 'Y', // Пример: только активные записи
];

// QUERY - запрос к API Битрикс24 для получения записей складского учета
$results = \Bitrix\Crm\Product\Catalog::getList([
    'filter' => $filter,
    'select' => ['ID', 'NAME', 'QUANTITY', 'PRICE'], // Выберите необходимые поля
])->fetchAll();

// PROCESS - обработка результатов
$foundItems = [];
$itemIDs = [];
foreach ($results as $item) {
    $foundItems[] = $item;
    $itemIDs[] = $item['ID'];
}

// LOG - отчет о выполнении
$this->WriteToTrackingService("Найдено записей складского учета: " . count($foundItems));
$this->WriteToTrackingService("ID найденных записей: " . implode(", ", $itemIDs));

// OUTPUT - возврат переменных
$rootActivity = $this->GetRootActivity();
$rootActivity->SetVariable("FoundInventoryItemsCount", count($foundItems));
$rootActivity->SetVariable("FoundInventoryItemIDs", implode(",", $itemIDs));
$rootActivity->SetVariable("InventoryItemsData", serialize($foundItems)); // Сериализуем данные для передачи

Параметры

  • $filter (array, optional): Массив для фильтрации записей складского учета. Может включать такие поля, как ID, ACTIVE и другие.

Возвращаемые значения

  • FoundInventoryItemsCount (int): Количество найденных записей складского учета.
  • FoundInventoryItemIDs (string): Строка с ID найденных записей, разделенных запятыми.
  • InventoryItemsData (string): Сериализованный массив с полными данными найденных записей складского учета.