Имя: Пароль:
1C
 
Почему данный код выдает ошибку ?
0 Grekos2
 
08.10.19
15:43
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
    Фор = ПолучитьФорму("Документ.Важный.ФормаОбъекта");
    ДанныеФормы = Фор.Объект;
    ЗаполнитьДокНаСервере(ДанныеФормы);
КонецПроцедуры

&НаСервереБезКонтекста
Процедура ЗаполнитьДокНаСервере(ДанныеФормы)
    ДокОбъект=ДанныеФормыВЗначение(ДанныеФормы,Тип("ДокументОбъект.Важный") );
    ЗначениеВДанныеФормы(ДокОбъект,ДанныеФормы);    
КонецПроцедуры

Говорит " Процедура или функция с указанным именем не определена (ЗаполнитьДокНаСервере)"
1 Grekos2
 
08.10.19
15:45
Это модуль команды.

1С:Предприятие 8.3 (8.3.14.1565)
2 D_E_S_131
 
08.10.19
15:46
А если заменить "&НаСервереБезКонтекста" на "&НаСервере", то работает?
3 Grekos2
 
08.10.19
15:47
(2) Нет.
4 unenu
 
08.10.19
15:48
(1) Вы пытаетесь передать с клиента на сервер данные объекта УФ и надеетесь, что сможете обмануть платформу внеконтекстным вызовом?
5 D_E_S_131
 
08.10.19
15:50
(4) Ошибка при передаче данных по другому бы выглядела.
6 Grekos2
 
08.10.19
15:50
(2),(4)

Вру. Если просто &НаСервере", то работает если все аккуратно сделать.
7 pechkin
 
08.10.19
15:50
можно сделать так: на сервре подготовить структуру нового документа, а на клиенте заполнить поля формы
8 unenu
 
08.10.19
15:50
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
    Фор = ПолучитьФорму("Документ.Важный.ФормаОбъекта");
    ДанныеФормы = Фор.Объект;
    ЗаполнитьДокНаСервере(1);
КонецПроцедуры

&НаСервереБезКонтекста
Процедура ЗаполнитьДокНаСервере(ДанныеФормы)
    а = "";
КонецПроцедуры

попробуйте так, а потом опять приступаете к насилию сервера
9 Grekos2
 
08.10.19
15:51
Всем спасибо за внимание :))
10 pechkin
 
08.10.19
15:51
ну если процедура не найдена, то просто имя не правильно написано
11 Grekos2
 
08.10.19
15:52
(10) Имя правильно написано.
     БезКонтекста нельзя в данном случае.
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс