|
РеквизитФормыВЗначение() | ☑ | ||
---|---|---|---|---|
0
Max Street
06.09.13
✎
14:46
|
День добрый. Вчера задавал подобный вопрос, спасибо всем кто ответил, но не полностью разобрался
Объясните, пожалуйста, в чем преимущества/недостатки метода РеквизитФормыВЗначение("Объект"), если к тем же самым реквизитам можно обратиться через Объект.ИмяРеквизита? |
|||
1
hhhh
06.09.13
✎
14:50
|
(0) ну вы знаете что на сервере невозможно обратиться к Объект.ИмяРеквизита. В этом преимущество метода РеквизитФормыВЗначение("Объект")
|
|||
2
Max Street
06.09.13
✎
14:56
|
(1) может я говорю не правильно, но почему нельзя?
вот например, &НаСервере Процедура авб() Объект.Валюта = ""; КонецПроцедуры |
|||
3
GROOVY
06.09.13
✎
14:58
|
||||
4
hhhh
06.09.13
✎
14:58
|
(2) ну, примитивные типы нас не интересуют. Попробуйте посложнее, например, таблицу значений.
|
|||
5
GROOVY
06.09.13
✎
14:59
|
Объект нужно получать для того, чтобы передать его в какой либо другой модуль, изменить его и вернуть обратно и переконвертировать обратно в данные формы.
|
|||
6
GROOVY
06.09.13
✎
15:00
|
(4) С ТЗ как реквизит объекта? Это что-то новое.
|
|||
7
Odavid
06.09.13
✎
15:00
|
(1)>.В этом преимущество метода РеквизитФормыВЗначение
не преимущество, а один из костылей для УФ при передачи данных сервер-клиент. |
|||
8
Max Street
06.09.13
✎
15:05
|
(5) т.е РеквизитФормыВЗначение("Объект") используется для передачи в другой модуль и последующего изменения, правильно? я думал, это лишь частный случай
|
|||
9
Лефмихалыч
модератор
06.09.13
✎
15:07
|
(0) вот тут http://infostart.ru/public/198766/ прямым текстом отвечено на этот вопрос предельно подробно
|
|||
10
Лефмихалыч
модератор
06.09.13
✎
15:09
|
Между Объект.ИмяРеквизита и РеквизитФормыВЗначение("Объект").ИмяРеквизита нет ни какой разницы. Но вот методы модуля объекта из переменной Объект вызвать не получится, т.к. это не объект, а структура. Для этого нужно создать объект посредством РеквизитФормыВЗначение
|
|||
11
Max Street
06.09.13
✎
15:14
|
(10) спасибо, теперь вроде разобрался
Всем спасибо |
|||
12
hhhh
06.09.13
✎
15:33
|
(6) да, работает вот такая фишка, как оказалось
СписокВыбранных = Новый СписокЗначений; СписокВыбранных.ЗагрузитьЗначения(РеквизитФормыВЗначение("ТабличноеПолеВидыОбъектов").ВыгрузитьКолонку("ИмяТаблицы")); где ТабличноеПолеВидыОбъектов - реквизит формы типа таблица значений. а если просто написать СписокВыбранных.ЗагрузитьЗначения(Объект.ТабличноеПолеВидыОбъектов.ВыгрузитьКолонку("ИмяТаблицы")); не работает. |
|||
13
Odavid
06.09.13
✎
15:37
|
А что, торлько я знал, что ТЗ можно передавать в РеквизитВЗначение?!
Вообще, там и весь объект-форму можно передавать... Об этом тоже знаю только я - стойкий защитник обычных форм? |
|||
14
Зойч
06.09.13
✎
15:40
|
Без этого метода не вызвать процедуру из модуля
|
|||
15
Зойч
06.09.13
✎
15:40
|
(14) собственно только для этого он и нужен
|
|||
16
Лефмихалыч
модератор
06.09.13
✎
15:48
|
тока надо помнить, что всякий раз, как вы вызываете РеквизитФормыВЗначение("%РЕВИЗИТ%"), все данные реквизита %РЕВИЗИТ% сериализуются и ломятся на сервер
|
|||
17
Odavid
06.09.13
✎
16:20
|
(16) а что делать, если 1с так захотелось, и все, с утра - замсуж, а реализовать нормальную передачу данных она "не шмогла"? ))
|
|||
18
Odavid
06.09.13
✎
16:20
|
*замуж
|
|||
19
Лефмихалыч
модератор
06.09.13
✎
17:02
|
(17) что ненормального в передаче данных, реализованной в 1С?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |