TGViewer
Александр Кунташов — про 1С и не только Александр Кунташов — про 1С и не только @kuntashov_devnotes · 2.56K subscribers
Post #42 360
#СекретыБитрикс24

При разработке интеграции Б24 с 1С:Бухгалтерией наткнулся на ошибку получения реквизитов в пакетном запросе.

Делаю пакетный запрос с целью получить реквизиты компании, связанные со счетом:

BX24.callBatch({
lnk: ['crm.requisite.link.get', { entityTypeId: 5, entityId:63 }],
req: ['crm.requisite.get', { id : '$result[lnk][REQUISITE_ID]'}]
},
function(result) {
console.log(result.req.data());
}
);


Получаю ошибку при выполнении второго запроса req:

{"req":{"error":"","error_description":"Resource \u0027GET\u0027 is not supported in current context."}}


Если задать id в запросе req статично, то результат возвращается корректно.
Это методы реквизитов не поддерживают макросы в составе пакетного запроса или у меня глаз замылился и я макрос не правильно написал?

Та же ошибка возникает, если вместо макроса $result[lnk][REQUISITE_ID] передать конкретный ID (но первый запрос оставить).

Если первый запрос удалить, а во втором указать конкретное значение, то ошибки не будет.
Также ошибки не будет, если выполнить в пакете несколько запросов `crm.requisite.get. Т.е. ошибка возникает только если одновременно выполняются два указанных вида запроса.

Отладка кода в коробке показала что есть ошибка в методе CCrmRestService::onRestServiceMethod (http://bxapi.ru/src/?module_id=crm&name=CCrmRestService::onRestServiceMethod): для методов crm.requisite.* и crm.requisite.link.* используются разные прокси-объекты, но кэшируются они все по одному и тому же ключу "requisite", в итоге в пакетном запросе кто первый из них в пакете вызывается, то прокси того объекта сохраняется в кэш и далее только он и работает для обоих методов, что и приводит к указанной ошибке.

Написал в поддержку Б24 в чате, а пока обход один: разделить один пакет на два: в одном получить ID связанных со счетом реквизитов, а в другом уже получать сами реквизиты.
bxapi.ru CCrmRestService::onRestServiceMethod: метод Битрикс Поиск по исходникам системы Битрикс. Весь код как на ладони, удобно структуированный. Учитесь по исходникам.
More from @kuntashov_devnotes
  1. Sep 28, 2026Что с кожаными сотрудниками, что с цифровыми вопрос "А не фигню ли мы делаем?" остается ак…
  2. Sep 10, 2026Post #749
  3. Aug 28, 2026✍️ Humanizer для русского языка от Сарычевой Внезапно на пост про grilling получил много о…
  4. Aug 17, 2026Может ли AI написать автотест для 1С: демонстрация Vanessa Automation Vanessa Automation –…
  5. Aug 13, 2026🔥 grill-me: как «прожарить» идею или требование при помощи ИИ до начала разработки Вижу,…
  6. Jun 22, 2026🎙 Продолжаем знакомить вас с модераторами INFOSTART TECH EVENT 2026 и их докладами Алекса…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →