Имя: Пароль:
1C
1С v8
Как правильно написать
,
0 Vitaliy_s87
 
05.11.12
19:03
Просматриваю видео курс Основные объекты по 8.1 и параллельно делаю в 8.2
в 8.1 вот такая процедура для поля булевского типа в модуле ФормыЕлемента справочника Номенклатура

Процедура УслугаПриИзменении(Элемент)
   Если Услуга = Истина
       Тогда
       ОснЕдиницаИзмерения = Константы.ОсновнаяЕдиницаУслуг.Получить();
   Иначе
       ОснЕдиницаИзмерения = null;
       КонецЕсли;
КонецПроцедуры

Как правильно написать в 8.2
я написал так

&НаСервере
Процедура ПолучитьОсновнаяЕдиницаУслуг()
   Константы.ОсновнаяЕдиницаУслуг.Получить();
   КонецПроцедуры




&НаКлиенте
Процедура УслугаПриИзменении(Элемент)
   Если Объект.Услуга = Истина
       Тогда
       ОснЕдиницаИзмерения = ПолучитьОсновнаяЕдиницаУслуг();
   Иначе
       ОснЕдиницаИзмерения = null;
       КонецЕсли;
КонецПроцедуры

пишет обращение к процедуре как к функции
сори за такой вопрос но только никогда с 1с никаких версий не работал начинаю с 8.2 самостоятельно
1 MishaD
 
05.11.12
19:06
Сам не пишу ни на 8.2, ни на 8.1. Но тебе прямым текстом написано "Обращение к процедуре как к функции"

ОснЕдиницаИзмерения = ПолучитьОсновнаяЕдиницаУслуг();

ПолучитьОсновнаяЕдиницаУслуг() - должна быть функцией
2 GROOVY
 
модератор
05.11.12
19:08
Сделай на сервере функцию.
3 Vitaliy_s87
 
05.11.12
19:11
когда сделал функцию ошибок нет но в пользовательском режиме не работает но и не ругается ни на что
4 MishaD
 
05.11.12
19:15
текст функции выложи. Есть подозрение, что ты про возврат забыл. типа такого

ОснЕдиницаИзмерения = Константы.ОсновнаяЕдиницаУслуг.Получить();
возврат ОснЕдиницаИзмерения;
5 Живой Ископаемый
 
05.11.12
19:15
гы... а "возврат" - Пушкин будет писать?
6 Vitaliy_s87
 
05.11.12
19:18
&НаСервере
Функция ПолучитьОсновнаяЕдиницаУслуг()
   Возврат Константы.ОсновнаяЕдиницаУслуг.Получить();
КонецФункции
7 Vitaliy_s87
 
05.11.12
19:28
так тоже не работает
8 MishaD
 
05.11.12
19:29
Я пас. Но Объект.Услуга точно Истина ? А константа то заполнена ? Может не ОснЕдиницаИзмерения, а Объект.ОснЕдиницаИзмерения
9 Vitaliy_s87
 
05.11.12
19:33
константа заполнена, Объект.Услуга это поле булевского типа (флажок)
10 Живой Ископаемый
 
05.11.12
19:39
в в8 есть отладчик, гарантия.
11 Vitaliy_s87
 
05.11.12
19:39
Объект.ОснЕдиницаИзмерения так работает
12 Vitaliy_s87
 
05.11.12
19:39
спс
13 MishaD
 
05.11.12
19:51
Вот так я и изучил 8.2 -)
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.