Имя: Пароль:
1C
1С v8
Вызов процедуры модуля объекта из формы....
,
0 Rustik666
 
14.08.12
06:21
Че то туплю....
Из формы нужно вызвать процедуру модуля объекта документа....
из клиентской процедуры формы вызываю серверную процедуру формы, а из нее процедуру модуля объекта....естественно экспортная .....

и говорит
Процедура или функция с указанным именем не определена

:-(

что не так то?....
1 ZanderZ
 
14.08.12
06:24
код
2 Rustik666
 
14.08.12
07:04
ФОРМА ДОКУМЕНТА
&НаСервере
Процедура ЗаполнитьНаСервере()
 ЗаполнитьПоГрафику();
КонецПроцедуры

&НаКлиенте
Процедура Заполнить(Команда)
 ...
 ЗаполнитьНаСервере();
КонецПроцедуры

МОДУЛЬ ДОКУМЕНТА
Процедура ЗаполнитьПоГрафику() Экспорт
...
КонецПроцедуры
3 ZloyProger
 
14.08.12
07:14
Хм.. А где собственно ссылка на документ, к модулю которого ты подключится пытаешься?) Или платформа по твоему сама должна догадаться?)
4 Rustik666
 
14.08.12
07:21
ну я так тоже пробывал
Документы.ЛистУчета.ЗаполнитьПоГрафику();

то же самое говорит...
5 ZanderZ
 
14.08.12
07:26
&НаСервере
Процедура ЗаполнитьНаСервере()
ДокументОбъект =  РеквизитФормыВЗначение("Объект");
ДокументОбъект.ЗаполнитьПоГрафику();
КонецПроцедуры
6 vvp91
 
14.08.12
07:28
(0) Из формы методы модуля объекта вызвать напрямую нельзя. Естественно речь идет об управляемом режиме 8.2.
Есть два варианта решения:
1. Через РеквизитФормыВЗначение, примеры в типовых.
2. Перенос метода из модуля объекта в модуль менеджера.
7 Rustik666
 
14.08.12
07:34
понял.....спасибо...
а из модуля менеджера как вызывать....
8 ZloyProger
 
14.08.12
07:35
(4) Кстати да, автор, а платформа какая? А то я-то в рамках 8.0-8.1, с 8.2 пока не дружу(
9 Rustik666
 
14.08.12
07:37
8.2.16
10 vvp91
 
14.08.12
07:41
(7) Вызов из модуля менеджера:
Документы.ЛистУчета.ЗаполнитьПоГрафику(Объект);

Но что-то мне подсказывает, что именно тебе лучше сделать, как написано в (5) и не заморачиваться переносом.
А то ведь перенос из модуля объекта в модуль менеджера требует рефакторинга метода.
11 Rustik666
 
14.08.12
07:42
ага, понял, спасибо...

а еще.....в модуле документа заполняю табличную часть.....
причем в отладчике смотрю и действительно количество строк не равно 0......
но на форме не вижу изменений (нет строк)....
12 Красный рассвет
 
14.08.12
07:56
&НаСервере
Процедура ЗаполнитьНаСервере()
ДокументОбъект =  РеквизитФормыВЗначение("Объект");
ДокументОбъект.ЗаполнитьПоГрафику();
ЗначениеВРеквизитФормы(ДокументОбъект, "Объект");
КонецПроцедуры
13 Defender aka LINN
 
14.08.12
08:05
Такие процедуры должны быть в модуле менеджера