Перейти до основного вмісту

Контроль статусів вивантаження даних (CRM інтеграція)

Загальний опис

Розділ описує контроль обробки пакетів продажів після передачі в зовнішню систему.

Хід обміну зручно переглядати в журналі подій обміну і за потреби в регістрі. Система за розкладом опитує API і оновлює регістр.

Деталі полів відповіді API — у методі Отримання статусу пакета даних.

Основні терміни

Журнал подій обміну — загальний лог HTTP-звернень до PharmaPoint: тип операції, код відповіді сервера, вміст запиту та відповіді. Зручний для перегляду всієї історії обміну та пошуку записів за ID пакета.

Регістр — (таблиця) пакетів даних, у якому зберігаються лише ID пакетів, що ще в черзі на отримання фінального статусу від API (import_status не фінальний). Після фінального статусу запис про пакет з регістру знімається; у цьому розділі також зручно стежити за чергою та переглядати зведену історію обміну по одному пакету.

Алгоритм дій

  1. Пакет продажів відправляється в зовнішню систему (CRM / PharmaPoint). У відповідь формується ID пакета в PharmaPoint — ідентифікатор, що відображається в журналі подій обміну та у регістрі. Цей ID додається в регістр, щоб далі контролювати обробку пакета.
  2. За розкладом система повторює звернення до API за кожним ID з регістру.
  3. Якщо в відповіді import_status має проміжне значення, запис про ID залишається в регістрі. Через заданий інтервал звернення до API повторюється.
  4. Коли import_status стає фінальним, 1С виконує дію згідно з таблицею Статуси та дії системи, знімає запис про ID з регістру та більше не опитує API за цим пакетом.

Вхід до розділу адміністрування

Перейдіть до робочого столу для моніторингу обміну:

  1. Відкрийте меню Адміністрування.
  2. Оберіть пункт Інтернет-замовлення.
  3. Відкрийте підрозділ Налаштування завантаження замовлень покупців PharmaPoint:
1С: форма «Налаштування заван�таження замовлень покупців PharmaPoint»

Вибір підрозділу «Налаштування завантаження замовлень покупців PharmaPoint».

У вікні, що відкрилося, перейдіть до вкладки Події обміну системи інтеграції замовлень:

1С: вкладка «Події обміну системи інтеграції замовлень»

Вибір вкладки «Події обміну системи інтеграції замовлень».

Відобразиться журнал Події обміну системи інтеграції замовлень зі списком усіх звернень до API.

Журнал подій обміну

У журналі Події обміну системи інтеграції замовлень для PharmaPoint можна переглянути повну історію звернень зокрема:

  • Операція — тип виконаної дії:

    • ВыгрузкаПродаж — пакет продажів відправлено у зовнішню систему.
    • ПроверитьСтатусыВыгрузок — перевірка статусу обробки пакета.
    • ПроверитьСтатусыВыгрузок_err — перевірка статусу завершилась помилкою.
    • ВыполнитьОтправкуСтатусов — відправка статусів назад у систему.
  • КодСостояния (у формі 1С; це HTTP-код відповіді сервера) — наприклад:

    • 200 — успішно, запит виконаний без помилок.
    • 201 — пакет створено / прийнято.
    • 422, 500 — помилки на сервері або некоректні дані.
Журнал подій обміну: операція, HTTP-код, запит і відповідь API

Журнал «Події обміну системи інтеграції замовлень».

Щоб оцінити хід обробки конкретного пакета в журналі знайдіть рядок із потрібним номером пакета (ID — ідентифікатор пакета в PharmaPoint) та натисніть на нього. Відкриється регістр, в якому відображаються пакети, які ще в черзі на отримання фінального статусу від API (детальніше див.Регістр).

Регістр

Регістр містить таблицю пакетів даних, у якій зберігаються лише ID пакетів, що ще в черзі на отримання фінального статусу .

Перегляньте колонки Запит та Відповідь. Статус пакета міститься в JSON відповіді в полі import_status:

  • Поки пакет обробляється, у відповідях на перевірку статусу з'являються проміжні значення import_status (наприклад, processing):
Регістр: колонки «Запит» і «Відповідь», проміжний import_status (наприклад processing)

Перегляд по пакету в регістрі: проміжний import_status (наприклад, processing).

інформація

Через заданий інтервал (згідно з налаштуваннями) система повторює звернення до API за кожним ID з регістру, доки import_status у відповіді не стане фінальним. Перелік фінальних і проміжних значень — у таблиці Статуси та дії системи.

  • Після успішної обробки пакета даних у відповідях на перевірку статусу з'являються фінальні значення import_status (наприклад, success):
Регістр: у відповіді API фінальний import_status (наприклад success)

Перегляд по пакету в регістрі: фінальний import_status (наприклад, success).

Після вивантаження продажів у зовнішню систему до регістру додається запис з ID пакета (поки триває очікування фінального статусу):

Регістр: новий рядок з ID пакета

Регістр: новий рядок з ID пакета.

інформація

Коли import_status стає фінальним (див. Статуси та дії системи), запис про ID знімається з регістру, і звернення до API за цим ідентифікатором більше не виконуються.

Статуси та дії системи

Значення import_status у відповіді API (див. Отримання статусу пакета даних) інтерпретуються так:

СтатусТипДія системи
wait_in_queueПроміжнийОчікує в черзі. Запис залишається в регістрі для наступної перевірки, опитування триває
processingПроміжнийТриває опрацювання. Запис залишається в регістрі для наступної перевірки, опитування триває
deletingПроміжнийТриває видалення. Запис залишається в регістрі для наступної перевірки, опитування триває
successФінальнийОбробку по пакету завершено, запис з регістру знімається, подальші запити за цим ID для перевірки статусу не виконуються
errorФінальнийЗаписується лог помилки. Пакет видаляється з регістру
deletedФінальнийЗаписується лог. Пакет видаляється з регістру

Приклад успішної відповіді

Відповідь: GET /api/v1/marketplace/data-import/{import_id}/status
{
"data": {
"id": 10480764,
"dataset_type": "sell",
"import_status": "success",
"index_status": "success",
"imported_rows": 0,
"indexed_rows": 0,
"duplicated_rows": 1,
"deleted_rows": 0,
"created_at": "2026-04-02 14:00:39",
"updated_at": "2026-04-02 14:00:42"
}
}