Имя: Пароль:
1C
 
Проблема HTTP-сервисом.
0 jamilone
 
12.05.26
22:15
{HTTPСервис.HTTP_UPDATE.Модуль(988)}: Ошибка при вызове метода контекста (СоздатьДокумент)


Пытаюсь создать Поступление товаров и услуг через HTTP сервис. Ради интереса я даже закомментировал весь модуль объекта, модуль менеджера пуст. Нет влияющих подписок на событий и Полные права полный доступ к ИБ. Создаю новый документ в конфигураторе, и пытаюсь создать этот документ через HTTP сервис, все работает.

Поступление товаров и услуг никак не получается создать из за чего это может быть?
1 craxx
 
12.05.26
22:20
(0) в ЖР что пишется?
2 jamilone
 
12.05.26
22:23
(1)
3 jamilone
 
12.05.26
22:24
(1) Просто начало и Сеанс. Аутентификация.
4 craxx
 
12.05.26
22:30
(2) Отбор по ошибке что выдает?
5 jamilone
 
12.05.26
22:33
(4) Их нет
6 Hmster
 
12.05.26
22:59
(0) ты прямо в модуле сервиса создаешь документ? Попробуй код в общий модуль перенести
7 jamilone
 
13.05.26
19:59
(6) Попробовал ничего не поменялось. Выдает ошибку
8 craxx
 
13.05.26
20:14
(7) рискну предположить. Пользователь, под которым авторизуется сервис, не имеет прав на создание этого документа
9 Garykom
 
гуру
13.05.26
20:16
"У пользователя должны быть права на http-сервис"
10 Garykom
 
гуру
13.05.26
20:17
(8) рискну предположить что там не тот пользователь для http-сервиса используется
11 craxx
 
13.05.26
20:17
(9) можно еще в привилегированном модуле это делать
12 craxx
 
14.05.26
21:05
(9) судя по всему, у пользователя ТС есть эти права, иначе бы до создания документа не дошло, на этапе авторизации 403 было бы
13 Garykom
 
гуру
14.05.26
21:29
Что поделать если у ТС отладчик отняли
Хз что там в коде и на чем падает
Может банально ОбменДанными.Загрузка = Истина не хватает и все
14 Волшебник
 
14.05.26
23:38
(13) Это же веб-сервис, какой там отладчик...
15 RomanYS
 
15.05.26
00:28
(13) ошибка при СоздатьДокумент, ОбменДанными здесь явно мимо.
(0) Ошибки точно нормальной нигде нет?
Возможно директивы компиляции какие-то кривые в модуле объекта(документа ПТУ) и ошибка при компиляции модуля? Хотя http-сервис вроде не внешнее соединение, вроде просто на сервере должен выполняться
16 craxx
 
15.05.26
03:32
(15) Он же ошибку до конца не показал, поэтому можно только гадать, мое предположение - нету прав.
17 Web00001
 
15.05.26
04:12
(14)У него http сервис. Нет никаких проблем с его отладкой.
18 Garykom
 
гуру
15.05.26
09:19
И веб-сервисы в вполне нормально отлаживаются
Муторно конечно как и http-сервисы ловить
19 BaZZiL
 
15.05.26
17:34
Отлаживать метод сервиса через Postman!

(0) Сделать как в (6), в самом модуле сервиса только вызывать  нужные процедуры из общих модулей, так завсегда будет лучше, чтобы сам сервис отрабатывал без ошибки.

Завернуть вызов СоздатьДокумент() в ПОпытку-Исключение и посмотреть описание ошибки.

В любом случае вызов метода http сервиса при запросе тоже оборачивать в попытку и в случае кода ошибки 500 выводить ТелоОтвета как строку.

Синтаксический контроль модуля http-сервиса по "Зеленой галочке" не работает, надо вызывать "Проверка конфигурации" с галочкой "Сервер".

    HTTPЗапрос = Новый HTTPЗапрос([АдресРесурса]);
    ...
    Попытка
        ОтветСервера = глHTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
        ...
        Если ОтветСервера.КодСостояния = 500 Тогда //если синтаксическая ошибка
            Возврат Новый Структура("Успех,ОписаниеОшибки",Ложь,ОтветСервера.ПолучитьТелоКакСтроку());
        ...
        КонецЕсли;
    Исключение // если адрес в сети не найден или нет связи
        Возврат Новый Структура("Успех,ОписаниеОшибки",Ложь,"Нет ответа от сервера"+[АдресСервера]);
    КонецПопытки;
2 + 2 = 3.9999999999999999999999999999999...