Имя: Пароль:
1C
1С v8
Веб сервис. Как вернуть сообщение об ошибке
0 timdim
 
13.08.13
09:55
Есть веб сервис, он возвращает одно значение. В веб сервисе есть несколько параметров. При обращении в веб сервису эти параметры передаются. По этим параметрам ищется соответствие в базе веб сервиса. Можно ли как-то  через веб сервис передать что соответствие не найдено без добавления отдельного свойства в пакет XDTO?
1 timdim
 
13.08.13
10:12
никто не сталкивался с таким или я велосипед изобретаю?
2 Cube
 
13.08.13
10:14
Ну а что, по возвращаемому значению никак не определить, нашлось значение или нет?
3 alexei366
 
13.08.13
10:15
(1) Да создай ты тип "РезультатОтвета" с 2 свойствами к примеру: код результата и его описание, и установи в качестве возвращаемого параметра веб-сервиса
4 timdim
 
13.08.13
10:15
хотелось бы сообщить по какому именно параметру проблема. Если возвращаемое значение не заполнено, то нужно писать что проблема в одном из параметров
5 программистище
 
13.08.13
10:17
я уж думал снова Мисти
6 timdim
 
13.08.13
10:18
(3)о новом свойстве я теме сразу написал. Другого варианта нет получается или я хочу невозможного?
7 Cube
 
13.08.13
10:18
(4) Тип возвращаемого значения какое?
8 timdim
 
13.08.13
10:19
(7)строка определенной длины
9 alexei366
 
13.08.13
10:20
(8) Блин ну сделай булево возвращается, типа истина значит нашел, ложь значит нет
10 Cube
 
13.08.13
10:21
(8) Что, сложно написать какой длины?
11 Cube
 
13.08.13
10:22
+(10) И сколько параметров передается в веб-сервис?
12 timdim
 
13.08.13
10:22
(9)про добавление нового свойства в пакет я вкурсе. Думал можно как-то красивее написать, типа ОписаниеОшибки()
13 timdim
 
13.08.13
10:23
(10),(11) строка - 20 символов. Передаются 5 параметров, по 3-м из них ищется соответствие. Соответствием может быть не найдено по любому из 3-х
14 alexei366
 
13.08.13
10:24
(12) Ну пробуй тогда ВызватьИсключение, я аж хз. Ты походу сам не знаешь чо хош
15 Широкий
 
13.08.13
10:26
ВызватьИсключение
16 Кокос
 
13.08.13
10:26
(0) я вчера впервые воспользовался вебсервисом другой 1С. В ответ мне пришел xml файл. А чего бы  параметры в хмл не засунуть?
17 alexei366
 
13.08.13
10:26
(14) Но по моему это не красивее, я возвращаю в своих веб-сервисах, спец объект "РезультатОтвета" в котором содержуться разные свойства , типа код-ошибки описание, описание для пользователя ну и ещё пару штук. И этот объект является возвращаемым для каждого метода
18 timdim
 
13.08.13
10:27
(14) я знаю что хочу. Хочу сообщить в базу, из которой вызывается веб сервис, что по такому-то параметру соответствие не найдено, проверьте параметр. Пока единственный вариант добавление нового свойства и туда пихать описание ошибки
19 Cube
 
13.08.13
10:28
(13) Ну всё, вопрос решаем. При ошибке возвращай строку: "#Ошибка <КодОшибки>". Где <КодОшибки> - число, которое на клиенте превращается в описание. Текст ошибок и их коды в таблицу на клиент и в 1С.
20 sikuda
 
13.08.13
10:28
(0) так сделать параметр который будет,что-то возращать...
21 fisher
 
13.08.13
10:30
(19) Это кривой способ. Нормальную обработку ошибок надо закладывать еще на этапе проектирования. Но если профтыкали - то лучше уж сделать рефакторинг, чем костылями подпирать.
22 timdim
 
13.08.13
10:30
(14),(15) Исключение не красиво. Насчет нового свойства сразу знал и в теме написал, думал есть лучше вариант. Теперь понял что нет, буду делать свойство(просто веб сервис не хотелось изменять). Всем спасибо за внимание и подсказки
23 timdim
 
13.08.13
10:32
(19) в уже вовзращаемое значение не кошерно ставлять другие строки, пусть там будет лучше нужное значение
24 Cube
 
13.08.13
10:32
(21) Зависит от задач.
25 fisher
 
13.08.13
10:35
(24) Только если цена рефакторинга будет слишком высока. Так и рождаются монстры, доработка которых происходит по принципу "костылем больше, костылем меньше - уже без разницы". Поэтому голову надо включать до, а не после.
AdBlock убивает бесплатный контент. 1Сергей