Имя: Пароль:
1C
 
Реквизит хранилище в Табличной части документа УФ
0 Гений 1С
 
гуру
06.10.15
14:34
Есть ТЧ СписокФайлов. Есть реквизит ХранилищеШаблона с типом ХранилищеЗначения, куда можно загрузить файл.

Я загружаю в реквизит значение, но оно не сохраняется, даже если я запишу.

Почитал тут, ничего не понял: v8: Хранилище значения

Как можно в процессе работы с формой сохранять не отображаемые значения?
1 RomaH
 
naïve
06.10.15
14:35
ult cj[hfyztim b relf&
2 Cyberhawk
 
06.10.15
14:36
Передаешь произвольный гуид, главное что передаешь
3 Cyberhawk
 
06.10.15
14:37
А вообще рекомендую подсистему БСП "Присоединенные файлы"
4 Гений 1С
 
гуру
06.10.15
14:39
(2) поподробнее, плиз
5 Cyberhawk
 
06.10.15
14:40
(4) Я в (2) попутал ХЗ и ВХ
6 Cyberhawk
 
06.10.15
14:41
"Я загружаю в реквизит значение, но оно не сохраняется, даже если я запишу"
Покажи код
7 RomaH
 
naïve
06.10.15
14:42
где и куда пишешь?

Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
    // Вставить содержимое обработчика.
КонецПроцедуры

тут?
8 Гений 1С
 
гуру
06.10.15
14:44
Короче, поставил затычку в виде О.Записать().
Некрасиво, но времени втыкать нету.
Кто знает, как правильно сделать?

&НаКлиенте
Процедура ВыгрузитьШаблон(Команда)
    ТекущиеДанные = Элементы.ФайлыОбмена.ТекущиеДанные;
    Если ТекущиеДанные = Неопределено Тогда
        ПоказатьПредупреждение(, "Выберите строку!");
        Возврат;
    КонецЕсли;
    
    Если СокрЛП(ТекущиеДанные.ИмяФайлаШаблона) = "" Тогда
        ПоказатьПредупреждение(, "Шаблон не заполнен!");
        Возврат;
    КонецЕсли;
    
    Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение);
    Диалог.МножественныйВыбор = ложь;
    
    Попытка
        Ф = Новый Файл(ТекущиеДанные.ИмяФайлаШаблона);
    Исключение
        Диалог.Расширение = Ф.Расширение;
    КонецПопытки;
    
    Диалог.Показать(Новый ОписаниеОповещения("ВыгрузитьШаблонЗавершение", ЭтотОбъект, Новый Структура("НомерСтроки", ТекущиеДанные.НомерСтроки)));
    
КонецПроцедуры

&НаКлиенте
Процедура ВыгрузитьШаблонЗавершение(Результат, ДополнительныеПараметры) Экспорт
    Если Результат = Неопределено Тогда Возврат; КонецЕсли;
    ВыбИмяФайла = Результат[0];
    
    ДД = ВыгрузитьШаблонНаСервере(ДополнительныеПараметры.НомерСтроки);
    Если ДД = Неопределено Тогда
        ПоказатьПредупреждение(, "Шаблон не задан, пустой!");
    КонецЕсли;
    ДД.Записать(ВыбИмяФайла);

КонецПроцедуры

&НаСервере
Функция ВыгрузитьШаблонНаСервере(НомерСтроки)
    
    О = РеквизитФормыВЗначение("Объект");
    ДД = О.ФайлыОбмена[НомерСтроки - 1].ХранилищеШаблона.Получить();
    Возврат ДД;

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


#КонецОбласти
9 Cyberhawk
 
06.10.15
14:50
Ясен пень что тебе придется ХЗ записывать в объект на сервере, ибо на клиенте этот тип недоступен
10 Kyon8
 
06.10.15
14:56
1. Почитать где-нибудь на инфостарте по работе с прикреплёнными изображениями в УФ.
2. Для одного изображения/файла добавляется на форму реквизит строка - адрес временного хранилища на сервере (туда помещается ХранилищеЗначения). Если таблица файлов - добавлять реквизит таблица {адрес, ключСвязи}, где ключСвязи - уникалюный ключ ТЧ (число, например).
3. Или текущий вариант оставить, он проще.
11 stix2010
 
06.10.15
15:29
От скольки этот человек хочет?
12 Гений 1С
 
гуру
06.10.15
15:39
(10) ну да, можно гемороиться с адресом хранилища, но че то неохота.

(11) от 150