Имя: Пароль:
1C
1С v8
МодульФормы, только На клиенте?
,
0 НикДляЗапросов
 
31.10.12
15:26
Все процедуры и функци на сервере, выносить в модуль объекта?
1 NcSteel
 
31.10.12
15:26
(0) Если не нужен контекст формы, то выноси.
2 Нуф-Нуф
 
31.10.12
15:28
и если вызов этих процедур не только из формы - то выноси
3 НикДляЗапросов
 
31.10.12
16:05
(1) Ну вот контекст то можно выгрузить РеквизитФормыВЗначение так, нет?
4 NcSteel
 
31.10.12
16:06
(3) РеквизитФормыВЗначение только в контексте форм, в модуле не сработает.
5 НикДляЗапросов
 
31.10.12
16:11
(4) Ну Контекст то формы мне как раз таки и нужно менять, получается РеквизитФормыВЗначение(объект), и на в модуле документа (на сервере) его менять
6 NcSteel
 
31.10.12
16:14
(5) Не получится. Модуль объекта не знает о форму ничего.

Что конкретно надо напиши, тогда можно подсказать более резултативно.
7 НикДляЗапросов
 
31.10.12
16:32
//модуль Формы
   Документ = РеквизитФормыВЗначение("Объект");
   Документ.ЗаполнитьСостав();
   ЗначениеВРеквизитФормы(Документ,"Объект");

//Процедура ЗаполнитьСостав() Экспорт
   Для каждого ТС Из Состав Цикл
       ТС.Цена = Тс.Товар.Цена;
       ТС.Сумма = Тс.Цена*Тс.Количество;    
   КонецЦикла;
КонецПроцедуры
Я не понимаю код, в каких он модулях должен быть расположен и почему? Вот так правильно или нет?
8 NcSteel
 
31.10.12
16:33
(7) не правильно. Подобный код должен распологаться на форме.
9 Mort
 
31.10.12
16:37
Даже так порой оправданно:

&НаКлиентеНаСервереБезКонтекста
Процедура ПересчитатьСуммы(Форма)
Для Каждого СтрокаТЧ из Форма.Объект.Состав Цикл
......
10 НикДляЗапросов
 
31.10.12
16:38
(8) Так ука преподовательница 1С, курс "основы програмиирования в ситсеме 1С", ща мне онлайн парит вот такую схему как я написал
11 Mort
 
31.10.12
16:40
А, не разглядел, тама есть получение значения по ссылке. Ну как вариант, да.
12 НикДляЗапросов
 
31.10.12
16:42
//модуль Формы

   Документ = РеквизитФормыВЗначение("Объект");
   Документ.ЗаполнитьСостав();
   ЗначениеВРеквизитФормы(Документ,"Объект");

//МодульОбъекта
Процедура ЗаполнитьСостав() Экспорт

   Для каждого ТС Из Состав Цикл
       ТС.Цена = Тс.Товар.Цена;
       ТС.Сумма = Тс.Цена*Тс.Количество;    
   КонецЦикла;
КонецПроцедуры
Вот так вот разместила