Имя: Пароль:
1C
 
Есть ли в 8-ке возможность сохранять значений реквизитов формы в файл
0 DGorgoN
 
26.02.09
09:57
Или общее хранилище?
Что - бы обработка использовала только эти настройки.
В 7-ке приходилось писать свою универсальную функцию. А в 8-ке как это дело можно организовать малой кровью?
1 Skazy
 
26.02.09
10:01
А чем не подходит "Сохранить значения" на форме?
2 DGorgoN
 
26.02.09
10:03
(1) Тем что-бы у каждого пользователя были одни и те-же настройки
3 SuperMario
 
26.02.09
10:04
Я делал так:

   СтруктураЭлементов = Новый Структура;
   Для Каждого ЭлементФормы Из ЭлементыФормы Цикл
       Если ЗначениеЗаполнено(ЭлементФормы.Данные) Тогда
           ЗнВСтр = ЗначениеВСтрокуВнутр(ЭлементФормы.Значение);
           СтруктураЭлементов.Вставить(ЭлементФормы.Имя, ЗнВСтр);
       КонецЕсли;    
   КонецЦикла;    
   ЗначениеВФайл(ИмяФайла_, СтруктураЭлементов);
4 DGorgoN
 
26.02.09
10:05
(3) Думал есть какая нибудь спец. стандартная функция - просто найти не могу. По типу как с шарпе.

Если код выложишь для загрузки - вообще рад буду :)
5 Mitriy
 
26.02.09
10:06
создаешь структуру или таблицу значений с нужными значениями и СохранитьЗначение/ВосстановитьЗначение
6 Mitriy
 
26.02.09
10:07
(5)* млин... туплю... это тоже для пользователя...
7 DGorgoN
 
26.02.09
10:12
(3) ау
8 DGorgoN
 
26.02.09
10:19
(3) пропал
9 DGorgoN
 
26.02.09
10:23
Процедура ВосстановитьЗначенияФормы(Элемент)
   СтруктураЭлементов = Новый Структура;
   СтруктураЭлементов = ЗначениеИзФайла("");
   Для Каждого ЭлементФормы Из ЭлементыФормы Цикл
       ЭлементФормы.Значение = ЗначениеИзСтрокиВнутр(СтруктураЭлементов[ЭлементФормы.Имя])  
   КонецЦикла;  
КонецПроцедуры

?
10 DGorgoN
 
26.02.09
10:28
А допустим если таблица значений на форме
11 SuperMario
 
26.02.09
10:32
Это такой же элемент коллекции объектов формы и успешно сохраняется ЗначениеВСтрокуВнутр и ЗначениеИзСтрокиВнутр
12 DGorgoN
 
26.02.09
10:33
(11) ругается
13 DGorgoN
 
26.02.09
10:33
{Форма.Форма(510)}: Поле объекта не обнаружено (Значение)
       ЗнВСтр = ЗначениеВСтрокуВнутр(ЭлементФормы.Значение);
14 DGorgoN
 
26.02.09
10:35
Все - понял на что он ругается :)
15 SuperMario
 
26.02.09
10:35
Сорь. Я тебя чкть обманул. Там вот так делал:
               
Если (ЭлементФормы.Данные  = "ДокРеквизиты") Тогда
ЭлементФормы.Значение.Загрузить(ЗначениеЭл); // это для ТЗ
Иначе    
ЭлементФормы.Значение = ЗначениеЭл; // Это для элементов
конецЕсли;
16 DGorgoN
 
26.02.09
10:36
Процедура СохранитьЗначенияФормы()
   СтруктураЭлементов = Новый Структура;
   Для Каждого ЭлементФормы Из ЭлементыФормы Цикл
       Если ЗначениеЗаполнено(ЭлементФормы.Данные) Тогда
           Сообщить(ЭлементФормы.Имя);
           ЗнВСтр = ЗначениеВСтрокуВнутр(ЭлементФормы.Значение);
           СтруктураЭлементов.Вставить(ЭлементФормы.Имя, ЗнВСтр);
       КонецЕсли;    
   КонецЦикла;    
   ЗначениеВФайл("O:\Load Upload (1c data authomat exchange)\Buh\PoFirmam.sav", СтруктураЭлементов);
КонецПроцедуры

Процедура ВосстановитьЗначенияФормы()
   СтруктураЭлементов = Новый Структура;
   СтруктураЭлементов = ЗначениеИзФайла("O:\Load Upload (1c data authomat exchange)\Buh\PoFirmam.sav");
   Для Каждого ЭлементФормы Из ЭлементыФормы Цикл
       Попытка
           ЭлементФормы.Значение = ЗначениеИзСтрокиВнутр(СтруктураЭлементов[ЭлементФормы.Имя])  
       Исключение
       КонецПопытки;
   КонецЦикла;  
КонецПроцедуры
17 DGorgoN
 
26.02.09
10:36
(150 Работает :) Эт я тебе обманул - оно на панель натыкалась..
18 DGorgoN
 
26.02.09
10:37
Процедура СохранитьЗначенияФормы()
   СтруктураЭлементов = Новый Структура;
   Для Каждого ЭлементФормы Из ЭлементыФормы Цикл
       Если ЗначениеЗаполнено(ЭлементФормы.Данные) Тогда
           ЗнВСтр = ЗначениеВСтрокуВнутр(ЭлементФормы.Значение);
           СтруктураЭлементов.Вставить(ЭлементФормы.Имя, ЗнВСтр);
       КонецЕсли;    
   КонецЦикла;    
   ЗначениеВФайл("O:\Load Upload (1c data authomat exchange)\Buh\PoFirmam.sav", СтруктураЭлементов);
КонецПроцедуры

Процедура ВосстановитьЗначенияФормы()
   СтруктураЭлементов = Новый Структура;
   СтруктураЭлементов = ЗначениеИзФайла("O:\Load Upload (1c data authomat exchange)\Buh\PoFirmam.sav");
   Для Каждого ЭлементФормы Из ЭлементыФормы Цикл
       Попытка
           ЭлементФормы.Значение = ЗначениеИзСтрокиВнутр(СтруктураЭлементов[ЭлементФормы.Имя])  
       Исключение
       КонецПопытки;
   КонецЦикла;  
КонецПроцедуры
19 SuperMario
 
26.02.09
10:37
(16) и ТЗ восстанавливает?
Я делал по (15)
20 DGorgoN
 
26.02.09
10:37
(19) да, восстанавливает :)
21 DGorgoN
 
26.02.09
10:39
(19) Запостить в КЗ? Или сам запостишь?
22 SuperMario
 
26.02.09
10:42
ХЗ. Решай сам.
24 DGorgoN
 
26.02.09
10:49
(23) Поток сознания? кто выпустил бота наружу?
25 lexa
 
05.03.09
14:09
а в хранилище значений?
26 vde69
 
05.03.09
14:16
Настройка = ВосстановитьЗначение("НастройкаОтчетыНеопределенныйСтатусРасходниковНеопределенныйСтатусРасходников_"+СокрЛП(ТекущийПользователь.Код));
   Если Настройка <> Неопределено Тогда
       ПостроительОтчетаНеопределенныйСтатусРасходников.УстановитьНастройки(Настройка);
   КонецЕсли;
27 DGorgoN
 
05.03.09
14:19
(26) Шо це?
28 DGorgoN
 
05.03.09
14:19
Мне как раз что-бы для всех одна настройка была