helpf.pro
Регистрация

v8.2 УП: Работа с ХранилищеЗначения

DJ_Serega
11.02.2013 23:13Прочитано: 3632
Хотелось бы получить часть текста по работе с ХранилищеЗначения. А то почему-то не хочет оно у меня сохранять в него ;)

З.Ы.: Интернет это хорошо, но на help1c.com еще нет ;)
Yandex
Возможно, вас также заинтересует
Реклама на портале
E_Migachev
12.02.2013 01:18Ответ № 1
(0) DJ_Serega, а что ты хочешь в него сохранять?
есть целая группа Работа с Хранилищем Значений
и вот например Создать, заменить, записать файл в Хранилище Значения
DJ_Serega
12.02.2013 01:22Ответ № 2
(1) E_Migachev, v8.2 УП: Работа с ХранилищеЗначения
*17

Ниже код, который работает на УП ;) Все-таки разобрался...

(для понятности выложу отдельным сообщением)
DJ_Serega
12.02.2013 01:32Ответ № 3
Загрузка файла в ХранилищеЗначения через ДвоичныеДанные:
Код 1C v 8.2 УП
 
&НаКлиенте
Процедура ЗагрузитьТестовыйФайл(Команда)

Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
Диалог.Заголовок = "Выберите тестовый файл:";
Диалог.Фильтр = "Текстовый файл (*.TXT)|*.txt";

Если Диалог.Выбрать() Тогда

Состояние("Загрузка тестового файла.");

ФайлКакДвоичныеДанные = Новый ДвоичныеДанные(Диалог.ПолноеИмяФайла);
Файл = Новый Файл(Диалог.ПолноеИмяФайла);

АдресХранилищаТестовогоФайла = ПоместитьВоВременноеХранилище(ФайлКакДвоичныеДанные, ПолучитьНавигационнуюСсылку(Объект));
ЗаписатьТестовыйФайлВХранилище(АдресХранилищаТестовогоФайла);

Сообщить("Тестовый файл успешно загружен.");

КонецЕсли;

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


&НаСервере
Процедура ЗаписатьТестовыйФайлВХранилище(АдресХранилищаТестовогоФайла)

ТекЭлемент = РеквизитФормыВЗначение("Объект");

ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресХранилищаТестовогоФайла);

ТекЭлемент.Хранилище = Новый ХранилищеЗначения(ДвоичныеДанные, Новый СжатиеДанных(9));
ТекЭлемент.Записать();

УдалитьИзВременногоХранилища(АдресХранилищаТестовогоФайла);

ЗначениеВРеквизитФормы(ТекЭлемент, "Объект");

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


Сохранение ранее загруженых ДвоичныхДанных в файл:

Код 1C v 8.2 УП
 
&НаКлиенте
Процедура СохранитьТестовыйФайл(Команда)

Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение);
Диалог.Заголовок = "Выберите каталог сохранения тестового файла.";
Диалог.Фильтр = "Текстовый файл (*.TXT)|*.txt";

Если Диалог.Выбрать() Тогда

Состояние("Сохранение тестового файла.");

ПрочитатьИСохранитьТестовыйФайлСХранилища(Диалог.ПолноеИмяФайла);

КонецЕсли;

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

&НаСервере
Процедура ПрочитатьИСохранитьТестовыйФайлСХранилища(ПолноеИмяФайлаСохранения)

ТекЭлемент = РеквизитФормыВЗначение("Объект");

ДвоичныеДанные = ТекЭлемент.Хранилище.Получить();
Если ДвоичныеДанные = Неопределено Тогда
Сообщить("Тестовый файл не загружен.");
Иначе
ДвоичныеДанные.Записать(ПолноеИмяФайлаСохранения);
КонецЕсли;

ЗначениеВРеквизитФормы(ТекЭлемент, "Объект");

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


Предлагаю перенести в помощник *07
Mokey
12.02.2013 12:03Ответ № 4
(3) DJ_Serega, Это был крик души что ли? ))
DJ_Serega
12.02.2013 14:38Ответ № 5
(4) Mokey, что-то в этом роде ) часиков 5 убил пока получилось...
В обычной 8.2 это все можно было написать несколькими строчками, а тут блина... Причем не тут нет описания работы с ХранилищемЗначения УП *16

А так как сайт Хелп1цэ люблю, то и хочу хоть как-то помочь в развитии проекта *17

upd: могу сам добавить в каталог (в первом ответе). Но стоит ли? *12
Изменено 12.02.13 14:39:18
DJ_Serega
12.02.2013 23:58Ответ № 6
Так что мой крик не услыша? )
E_Migachev
13.02.2013 00:37Ответ № 7
(6) DJ_Serega, слышан ) пока не надо добавлять, сайт сейчас в стадии переделки... вскоре будут новые категории, функции, разделы и т.д...
Подсказка: Щелкнув по значку (справа от названия вопроса), вы получите список ответов на похожие вопросы!
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.