Имя: Пароль:
1C
1С v8
Получить ссылку на созданный элемент
0 First_Spectr
 
17.12.17
01:10
Всем привет, знакомлюсь немного с 1С, пытаюсь добавить картинку к элементу справочника. Дано: два справочника Карточки с реквизитом Обложка(СпрСсылка.Файлы) и Фото(Строка - Ссылка на картинку) и Файлы с реквизитом Файл(ХранЗнач). В процедуре ПередЗаписьюНаСервере делаю так

    НовыйЭлемент = Справочники.Файлы.СоздатьЭлемент();
    НовыйЭлемент.Файл = Новый ХранилищеЗначения (ПолучитьИзВременногоХранилища(Фото));
    НовыйЭлемент.Записать();
    ТекущийОбъект.Обложка = НовыйЭлемент.Ссылка;

В итоге картинка успешно сохраняется в спр Файлы, но вместо ссылки на нее я получаю пустоту, если выводить ссылку с помощью сообщить то получаю <>.
1 h-sp
 
17.12.17
01:17
(0) так вы наверно в сообщить элемент пишете. Сообщить должно вывести наименование элемента вам.
2 First_Spectr
 
17.12.17
01:21
Сообщить(НовыйЭлемент);
    Сообщить(НовыйЭлемент.Ссылка);
В обоих случаях выводит < >
3 Franchiser
 
гуру
17.12.17
01:23
А какую ссылку ты ожидаешь увидеть? Файл это же двоичные данные, тонкий клиент ничего не знает о том что там картинка.
4 Franchiser
 
гуру
17.12.17
01:24
Ну он тебе показывает, что есть ссылка на файл, наименование не заполнено, ты его и не заполнял наверно
5 h-sp
 
17.12.17
01:26
(2) ну пишите

НовыйЭлемент.наименование = "мояхрень";
НовыйЭлемент.записать();

Тогда.     Сообщить вам выдаст
6 Franchiser
 
гуру
17.12.17
01:28
Новыйэлемент.Наименование = "моякартинка";
7 First_Spectr
 
17.12.17
01:31
Наименование мне не нужно, мне надо получить ссылку на созданный элемент что бы привязать картинку к элементу текущего справочника. Т.е. что бы в реквизите "Обложка" была ссылка на элемент из спр Файлы. Сейчас когда я открываю элемент и пытаюсь подгрузить картинку в процедуре ПриСозданииНаСервере
Фото = ПолучитьНавигационнуюСсылку(Объект.Ссылка, "Объект.Обложка.Файл");
Она не грузится, а если вывести с помощью сообщить Объект.Обложка то там пусто.
8 First_Spectr
 
17.12.17
01:43
Заменил

Фото = ПолучитьНавигационнуюСсылку(Объект.Ссылка, "Объект.Обложка.Файл");

На

Фото = ПолучитьНавигационнуюСсылку(Объект.Обложка, "Файл");

Заработало, почему так и не понял, но можно считать что проблема решена, спасибо всем кто откликнулся.