Вход | Регистрация


Возврат ссылки с сервера на клиент

Возврат ссылки с сервера на клиент
Я
   TolstiyBeremenniy
 
18.12.18 - 04:56
На сервер передаю наименование номенклатуры, нахожу элемент.
Возвращаю его с сервера на клиент, но в переменной на клиенте
нет ссылки уже. Как это будет правильно сделать?
 
 
   TolstiyBeremenniy
 
1 - 18.12.18 - 04:58
Причем находится элемент, который я создал программно,
но у него нет значения в реквизите Ссылка. Как элемент
номенклатуры может быть без ссылки?
   Михаил Иванович
 
2 - 18.12.18 - 05:00
(1) "но у него нет значения в реквизите Ссылка" - ай-ай-ай... какой ужос.
   Лефмихалыч
 
3 - 18.12.18 - 05:03
Записать() забыл?
   TolstiyBeremenniy
 
4 - 18.12.18 - 05:06
(3) Так элемент же в справочнике. как забыл то?
я его могу открыть и посмотреть.
А делаю программно обработку.
        Если НайденнаяНоменкл <> 0 Тогда
            НоваяСтрока              = Объект.СписокНоменклатуры.Добавить();
            НоваяСтрока.Номенклатура = НайденнаяНоменкл;



//

&НаСервере
Процедура СоздатьНоменклатуру(НаименованиеНоменклатуры)
    НоваяНоменклатура              = Справочники.Номенклатура.СоздатьЭлемент();
    НоваяНоменклатура.Наименование = НаименованиеНоменклатуры;
    НоваяНоменклатура.Записать();
КонецПроцедуры
//





Он находится без ссылки. может он с сервера не передается?
   TolstiyBeremenniy
 
5 - 18.12.18 - 05:08
Вот тут элемент находится, есть наименование, код, а ссылки нет!


//


&НаСервере
Процедура СоздатьНоменклатуру(НаименованиеНоменклатуры)
    НоваяНоменклатура              = Справочники.Номенклатура.СоздатьЭлемент();
    НоваяНоменклатура.Наименование = НаименованиеНоменклатуры;
    НоваяНоменклатура.Записать();
КонецПроцедуры
//




Соответственно я не могу её вернуть с сервера. Это от чего так?
   TolstiyBeremenniy
 
6 - 18.12.18 - 05:09
Точнее вот тут он находится но без ссылки, -

//

&НаСервере
Функция ВернутьНоменклатуру(Номенкл)
    НайденнаяНоменкл = Справочники.Номенклатура.НайтиПоНаименованию(Номенкл, 1);
    Если НайденнаяНоменкл <> Справочники.Номенклатура.ПустаяСсылка() Тогда
        Возврат НайденнаяНоменкл;
    Иначе
        Возврат 0;
    КонецЕсли; 
КонецФункции
//
   youalex
 
7 - 18.12.18 - 07:10
скриншот выложи, где ты смотришь, что "ссылки нет"
   ЕщеОдинПрограммист
 
8 - 18.12.18 - 07:17
думаю что проблема, либо Номенкл не является правильным наименованием, либо результат теряется уже после серверного вызова. Смотреть нужно отладчиком, трассируешь, и смотришь какое значение в НайденнаяНоменкл;
   AneJIbcuH
 
9 - 18.12.18 - 07:34
(6)
Для такой функции используй &НаСервереБезКонтекста
Где вызов этой функции у тебя?
   Лефмихалыч
 
10 - 18.12.18 - 07:52
(6) херню ты какую-то пишешь. Нет ни одного вызова этой твоей СоздатьНоменклатуру()
 
 Рекламное место пустует
   hhhh
 
11 - 18.12.18 - 08:02
СоздатьНоменклатуру(НаименованиеНоменклатуры)  вообще процедура. Не функция.
   sandal_r
 
12 - 18.12.18 - 11:39
&НаКлиенте
Процедура ДобавитьСтрокуВТЧ(Наименование)

    НоваяСтрока = Объект.СписокНоменклатуры.Добавить();
    НоваяСтрока.Номенклатура = ПолучитьСсылкуНоменклатурыПоНаименованию(Наименование);
    
КонецПроцедуры

&НаСервере
Функция ПолучитьСсылкуНоменклатурыПоНаименованию(Наименование)

    НайденнаяНоменклатура = Справочники.Номенклатура.НайтиПоНаименованию(Наименование, Истина);
    Если ЗначениеЗаполнено(НайденнаяНоменклатура) Тогда
        Возврат НайденнаяНоменклатура;
    Иначе
        НоваяНоменклатура                = Справочники.Номенклатура.СоздатьЭлемент();
        НоваяНоменклатура.Наименование    = НаименованиеНоменклатуры;
        НоваяНоменклатура.Записать();
        Возврат НоваяНоменклатура.Ссылка;
    КонецЕсли;

КонецФункции

Список тем форума
  Рекламное место пустует
Прочитай, хотя бы, Митичкина "Разработка в системе 1С:Предприятие 8". Волшебник
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует