|
На что заменить в коде ЗначениеЗаполнено(глТекущийПользователь)? | ☑ | ||
---|---|---|---|---|
0
Vika_22
23.11.11
✎
10:30
|
Всем Доброе утро.
Управление торговлей 8.2 (10.3.14.5) Во внешнем отчете на 8.2 есть такой код // Установим дату начала отчета Если ЗначениеЗаполнено(глТекущийПользователь) Тогда ДатаНач = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глТекущийПользователь,"ОсновнаяДатаНачалаОтчетов"); КонецЕсли; При проверке ошибок 1С ругается на: Переменная не определена (глТекущийПользователь). Я не понимаю две вещи: Что делает ЗначениеЗаполнено в данном коде? И Чем заменить ГлТекущийПользователь? Если вместо ГлТекущийПользователь поставить ПользователиИнформационнойБазы.ТекущийПользователь(), то вылезает ошибка = "Проверка мутабельных значений на заполненность не поддерживается". |
|||
1
Wobland
23.11.11
✎
10:31
|
а у меня вот такая конструкция есть
Ответственный = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "ОсновнойОтветственный"); Если Ответственный.Пустая() Тогда Ответственный = ПараметрыСеанса.ТекущийПользователь; КонецЕсли; |
|||
2
guitar_player
23.11.11
✎
10:37
|
Написать так:
// Установим дату начала отчета глТекущийПользователь = глЗначениеПеременной("глТекущийПользователь"); Если ЗначениеЗаполнено(глТекущийПользователь) Тогда ДатаНач = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глТекущийПользователь,"ОсновнаяДатаНачалаОтчетов"); КонецЕсли; |
|||
3
guitar_player
23.11.11
✎
10:38
|
ЗначениеЗаполнено как это ни странно. Проверяет заполненность переданного параметра
|
|||
4
Vika_22
23.11.11
✎
10:41
|
(3) Я спросила по поводу этой функции, потому что в СП написано: "Функция проверяет, отличается ли переданное значение от значения по умолчанию того же типа.". Какое значение по умолчанию у Текущего пользователя?
|
|||
5
Vika_22
23.11.11
✎
10:41
|
(2) глТекущийПользователь = глЗначениеПеременной("глТекущийПользователь");
|
|||
6
marvak
23.11.11
✎
10:41
|
(0)
Обычно глТекущийПользователь это переменная расположенная в модуле обычного приложения. Пр начале работы как правило туда пишется ссылка на юзера, работающего в данном сеансе. Но у твоем случае ее может там и не быть, надо проверить, А насчет мутабельности - эта функция неприменима к объектам, тока к ссылкам. |
|||
7
Vika_22
23.11.11
✎
10:41
|
(5) Скажите, пожалуйста, а изменение конструкции связано с переходом с8.1 на 8.2?
|
|||
8
Reset
23.11.11
✎
10:43
|
(4) В данном случае конструкция означает примерно следующее:
"Если известен текущий пользователь, дату начала отчета возьмем из его настроек, если не известен, ничего не будем делать" |
|||
9
Reset
23.11.11
✎
10:46
|
(8) Прогнал, простите, вопрос не об этом был
|
|||
10
guitar_player
23.11.11
✎
10:51
|
(4) значение по умолчание пустая ссылка, т.е. Справочники.Пользователи.ПустаяСсылка();
(7) я думаю, это связано, что во внешнем отчете эта переменная нигде не инициализирована. Конструкция не менялась. В типовых механизмах и раньше был такой подход |
|||
11
Vika_22
23.11.11
✎
10:53
|
Спасибо всем!!!! Воспользовалась конструкцией (2)
Посмотрела модуль обычного приложения, там эта конструкция везде используется. Странно, что в отчете ей не воспользовались. Работал ли отчет раньше, сказать не могу, не я его писала) (10) Возможно там и раньше была ошибка. Скажите, а ЗначениеЗаполнено вообще где может использоваться, для проверки чего? |
|||
12
guitar_player
23.11.11
✎
11:56
|
(11) Везде для проверки всего примитивного и ссылочного типа.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |