|
Возврат ссылки с сервера на клиент
|
Я
|
|
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 | &НаКлиенте
Процедура ДобавитьСтрокуВТЧ(Наименование)
НоваяСтрока = Объект.СписокНоменклатуры.Добавить();
НоваяСтрока.Номенклатура = ПолучитьСсылкуНоменклатурыПоНаименованию(Наименование);
КонецПроцедуры
&НаСервере
Функция ПолучитьСсылкуНоменклатурыПоНаименованию(Наименование)
НайденнаяНоменклатура = Справочники.Номенклатура.НайтиПоНаименованию(Наименование, Истина);
Если ЗначениеЗаполнено(НайденнаяНоменклатура) Тогда
Возврат НайденнаяНоменклатура;
Иначе
НоваяНоменклатура = Справочники.Номенклатура.СоздатьЭлемент();
НоваяНоменклатура.Наименование = НаименованиеНоменклатуры;
НоваяНоменклатура.Записать();
Возврат НоваяНоменклатура.Ссылка;
КонецЕсли;
КонецФункции |