|
Не устанавливается значение константы в УТ 11 |
☑ |
0
Dimarik_1
13.04.18
✎
22:33
|
Сейчас попробовал в УТ 11 программно установить значение константы.
Объект записывается в базу, но когда заходишь сам вручную проверить (или программно), константа не поменяла своего значения.
почему запись не работает, не понятно
&НаСервере
Процедура ЗаписатьКонстантуНаСервере()
// Вставить содержимое обработчика.
Константа = "ИспользоватьНесколькоОрганизаций";
КонстантаМенеджерЗначения = Константы[Константа].СоздатьМенеджерЗначения();
КонстантаМенеджерЗначения.Значение =Истина;
ЗаписатьОбъектВИБ(КонстантаМенеджерЗначения, ТипЗнч(КонстантаМенеджерЗначения));
КонецПроцедуры
&НаКлиенте
Процедура ЗаписатьКонстанту(Команда)
ЗаписатьКонстантуНаСервере();
КонецПроцедуры
Процедура ЗаписатьОбъектВИБ(ОбъектКонст, Тип)
Попытка
ОбъектКонст.ОбменДанными.Загрузка = Истина;
Объект.Записать();
Исключение
КонецПопытки;
КонецПроцедуры
|
|
1
Fragster
гуру
13.04.18
✎
22:38
|
ОбъектКонст.ОбменДанными.Загрузка = Истина;
Объект.Записать();
записываешь не объектконст, а реквизит формы Объект.
|
|
2
Fragster
гуру
13.04.18
✎
22:38
|
предложение по подсветке глобальных переменных у 1с "записано"
|
|
3
Доминошник
13.04.18
✎
22:53
|
А зачем дополнительно вызывать ЗаписатьОбъектВИБ?
Ведь достаточно и так:
Константа = "ИспользоватьНесколькоОрганизаций";
КонстантаМенеджерЗначения = Константы[Константа].СоздатьМенеджерЗначения();
КонстантаМенеджерЗначения.Значение =Истина;
КонстантаМенеджерЗначения.Записать();
|
|
4
Fragster
гуру
13.04.18
✎
22:57
|
да и зачем создавать менеджер значения тоже непонятно, ведь есть
КонстантаМенеджер.<Имя константы> (ConstantManager.<Имя константы>)
Установить (Set)
Синтаксис:
Установить(<Значение>)
Параметры:
<Значение> (обязательный)
Тип: Произвольный.
Новое значение константы.
Описание:
Устанавливает значение константы в базе данных.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).
Пример:
Константы.Бухгалтер.Установить("Сидоров Петр Иванович");
|
|
5
Defender aka LINN
13.04.18
✎
23:22
|
(0) Код делает следующее:
1. Создал менеджер значения константы.
2. Присвоил значение.
Далее менеджер спускается в унитаз.
3. Вызывается процедура "ЗаписатьОбъектВИБ", где
4.1 Одному объекту устанавливается "ОбменДанными.Загрузка = Истина"
4.2 Другой объект записывается.
Тебе реально хочется услышать, где ошибка?
|
|
6
Fragster
гуру
13.04.18
✎
23:27
|
(5) еще веселее, когда у формы есть реквизит "результат" ипа число, и в коде типа
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать(); <- вот тут внезапное исключение :)
|
|
7
Defender aka LINN
13.04.18
✎
23:33
|
(6) Ну, это легко ж отла... Хотя да, о чем это я.
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший