Имя: Пароль:
1C
1С v8
Запись ТабличногоДокумента на управляемой форме документа в реквизит документа
0 TheMask
 
17.09.14
11:29
Добрый день, 1с 8.3.4 - управляемые формы, web-клиент
На управляемой форме документа есть Реквизит типа ТабличныйДокумент - режим редактирования включен - в него заносится какая-то информация и требуется как-то сохранить этот табличный документ, чтобы при сохранении и закрытии докуемнта не потерять данные, занесенные вручную в реквизит ТабличныйДокумент. Вариант с записью в файл MXL при записи документа и чтении при его открытии не подойдет, т.к. web-клиент и MXL-файлы нежелательно сохранять у клиента, тем более с другого рабочего места 1с уже не найдет этот сохраненнный MXL и выдаст ошибку при открытии.
Пробовал создать в документе реквизит типа ХранилищеЗначения и в него уже пытаться записать ТабличныйДокумент, но пока не догоняю как сделать(((  Кто сталкивался - подскажите, плиз
1 Лодырь
 
17.09.14
11:35
Посмотреть и использовать механизм присоединенных файлов не вариант?
2 Балоун
 
17.09.14
11:35
ПечатьТТН в комплексной глянь
3 TheMask
 
17.09.14
11:38
механизм присоединенных файлов - это расширение для работы с файлами ?
4 Kamas
 
17.09.14
12:05
(0)  Значение в строку строку в документ не прокатит разве??
5 TheMask
 
17.09.14
12:09
(0)  Значение в строку строку в документ не прокатит разве??
это как ?
считать табличный документ построчно - записать его в строку и сохранить в реквизите типа Строка неограниченной длины ?
6 Балоун
 
17.09.14
12:09
(5) это заклинание из СП
7 TheMask
 
17.09.14
12:12
Base64Строка и Base64Значение использовать ?
8 Балоун
 
17.09.14
12:13
(7) да хоть XMLСтрока
9 TheMask
 
17.09.14
12:15
примера кода не завалялось случайно ?
10 Kamas
 
17.09.14
12:15
(7) Зачем табличный документ это объект 1с. его можно просто Перегнать ЗначениеВСтрокуВнутр(ТабДок)
11 Kamas
 
17.09.14
12:16
а достать ЗначениеИзСтрокиВнутр(СтрокаТабдок)
12 Kamas
 
17.09.14
12:17
(11) А сама строка Реквизит документа
13 DmitrO
 
17.09.14
12:17
Реквизит - реквизит формы типа ТабличныйДокумент;
РеквизитДокумента - реквизит документа типа ХранилищеЗначения;

Надо в событии ПриЧтенииНаСервере сделать:
ЭтотОбъект.Реквизит = ТекущийОбъект.РеквизитДокумента.Получить();

А в событии ПередЗаписьюНаСервере сделать:
ТекущийОбъект.РеквизитДокумента = Новый ХранилищеЗначения(ЭтотОбъект.Реквизит);

И не забыть поставить флажок СохраняемыеДанные в свойствах реквизита формы Реквизит.
14 TheMask
 
17.09.14
12:50
DmitrO большое спасибо)) помогло))
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший