Имя: Пароль:
1C
1С v8
То ли лыжи не едут, то ли я .......
,
0 sirbure
 
23.03.20
17:18
Почему я не могу передать с сервера на клиент число преобразованное в строку?
1 Fish
 
23.03.20
17:18
Показывай код
2 sirbure
 
23.03.20
17:20
Функция АналогиНоменклатураПриИзмененииНаСервере(Номенклатура)
    Номенклатура=Номенклатура.Ссылка.ПолучитьОбъект();
    УТН=Номенклатура.Код;
    УТН=СокрЛП(СтрЗаменить(УТН,"00-",""));
    УТН=СокрЛП(СтрЗаменить(УТН,"ЦБ-",""));
    Возврат Строка(УТН);
    // Вставить содержимое обработчика.
КонецФункции

Ошибка преобразования данных XDTO:
3 trad
 
23.03.20
17:21
ошибка наверняка при передаче параметра, а не при возврате
4 Жан Пердежон
 
23.03.20
17:21
(0) лыжи едут
5 sirbure
 
23.03.20
17:21
именно при возврате
6 Chameleon1980
 
23.03.20
17:21
пля, а зачем тут получить обьект?
7 SadrArt
 
23.03.20
17:22
(6) + и зачем Строку преобразовывать в строку
8 Fish
 
23.03.20
17:23
(5) Потому что ты передал в Функцию ссылку на номенклатуру, а пытаешься вернуть объект.
9 Жан Пердежон
 
23.03.20
17:23
(8) выдыхай
10 sirbure
 
23.03.20
17:24
Функция ТЕСТ(Номенклатура)
    УТН="999";
    Возврат УТН
КонецФункции
Ошибка преобразования данных XDTO:
Так проще?:)
11 sirbure
 
23.03.20
17:25
Функция ТЕСТ(Номенклатура)
    УТН="ааа";
    Возврат УТН
КонецФункции
Все норм
12 Fish
 
23.03.20
17:25
+(8) В общем, убери строку
Номенклатура=Номенклатура.Ссылка.ПолучитьОбъект();

и ошибка уйдёт
13 trad
 
23.03.20
17:26
(9) все правильно в (8) говорит
чтобы этот говнокод заработал:
Функция АналогиНоменклатураПриИзмененииНаСервере(Знач Номенклатура)
14 Fish
 
23.03.20
17:26
(10) (11) Не верю (с)
15 sirbure
 
23.03.20
17:26
(12) это не из за нее,  с объектом мне нужно будет работать....
16 Жан Пердежон
 
23.03.20
17:27
(13) он не пытается вернуть объект, он не знает как передача по ссылке работает при клиент/серверном вызове
17 Fish
 
23.03.20
17:28
(16) Почему же не пытается? Происходит неявный возврат через значение параметра.
18 SadrArt
 
23.03.20
17:28
(15) тогда назови переменную по другому, не совпадающим с параметром
19 Жан Пердежон
 
23.03.20
17:28
Возврат СтрЗаменить(СтрЗаменить(Номенклатура.Код,"00-",""),"ЦБ-",""));
20 trad
 
23.03.20
17:28
(16) если возвращаемому параметру присваивать объект - это называется "пытается вернуть объект"
21 sirbure
 
23.03.20
17:30
(20) где это происходит?
22 SadrArt
 
23.03.20
17:32
23 Жан Пердежон
 
23.03.20
17:34
(21)
плюс к (22):

Знач
Необязательное ключевое слово, которое указывает на то, что следующий за ним параметр передается по значению, т.е. изменение значения формального параметра при выполнении функции никак не повлияет на фактический параметр, переданный при вызове функции. Если это ключевое слово не указано, то параметр функции передается по ссылке, то есть изменение внутри функции значения формального параметра приведет к изменению значения соответствующего фактического параметра.
24 sirbure
 
23.03.20
17:38
Все понял, спс. Чета затупил капец как))
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой