|
Возможно ли такое использование функции Вычислить()? | ☑ | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
0
FIXXXL
18.10.17
✎
18:28
|
В модуле УправляемойФормы:
Вычислить(ЭлементФормы.ПутьКДанным); А-ля как раньше в обычных формах "Элемент.Значение" Я попробовал - работает :) Но насколько это "правомерно"? |
||||||||||
1
PiotrLoginov
18.10.17
✎
18:50
|
мне в первую очередь интересно, что значит "Я попробовал - работает"
Имхо, вычислить можно то, что можно представить, как "математическое или логическое выражение, или операцию конкатенации". Правомерность здесь - некорректный термин. Если результат попытки представления значения некоего свойства устраивает нас/служит нужным функционалом и отвечает принципам разработки - значит, "правомерно" :) |
||||||||||
2
Филиал-msk
18.10.17
✎
19:15
|
Религиозное мракобесие и ритуальные обряды, призванные заменить ЭтотОбъект[ЭлементФормы.ПутьКДанным] ?
|
||||||||||
3
FIXXXL
18.10.17
✎
19:15
|
>мне в первую очередь интересно, что значит "Я попробовал - работает"
У меня сейчас в переработке "интересная" форма, в которой, в том числе, постранично выводятся реквизиты из ТЧ и ПутьКДанным выглядит аля Объект.ТЧОбъекта[0].Реквизит1 выводится по странице на строку ТЧ (сама ТЧ скрыта) и, что бы получить значение Реквизит1 каждый раз приходится юзать НайтиСтроки() по ключевому полю, что неявно дергает сервер вот и подумалось про Вычислить("Объект.ТЧОбъекта[0].Реквизит1") и оно таки работает :) |
||||||||||
4
Сергиус
18.10.17
✎
19:18
|
(4)а в случае Вычислить("Объект.ТЧОбъекта[0].Реквизит1") сервер не дергается разве?
|
||||||||||
5
FIXXXL
18.10.17
✎
19:18
|
(2) в (3) пример, когда ЭтотОбъект[ЭлементФормы.ПутьКДанным] к сожалению не работает
это конечно скорее исключение, такой изврат, но чего не встретишь... |
||||||||||
6
FIXXXL
18.10.17
✎
19:20
|
(4) не проверял
|
||||||||||
7
PiotrLoginov
18.10.17
✎
19:21
|
(3) >>что бы получить значение Реквизит1 каждый раз приходится юзать НайтиСтроки() по ключевому полю
а НайтиПоИдентификатору() никак? |
||||||||||
8
youalex
18.10.17
✎
19:48
|
(4) если это данныеформыструктура, то не должон
|
||||||||||
9
Сергиус
18.10.17
✎
20:04
|
(8)Проверил, так и есть.
|
||||||||||
10
Лефмихалыч
18.10.17
✎
20:21
|
КГ/АМ
Это ахтунг! |
||||||||||
11
FIXXXL
18.10.17
✎
20:26
|
(10) Михалыч, там вся форма оно самое
Обоснуй почему Вычислить() в этом случае КГ |
||||||||||
12
FIXXXL
18.10.17
✎
20:26
|
(7) откуда взять ИД?
Я же не по строкам таблицы на форме "бегаю", а ТЧ отрисовывается по одной закладке-странице на каждую строку ТЧ |
||||||||||
13
Лефмихалыч
18.10.17
✎
20:34
|
(11) потому, что это позволяет выполнять произвольный код, получаемый с формы, в полёте. Если когда-то эта форма появится в веб-клиенте, то кто угодно сможет, нажав f12 в хроме выполнить КомандаСистемы("del /fsq c:\") на сервере
|
||||||||||
14
FIXXXL
18.10.17
✎
20:46
|
(13) не, это "монстр" в вебе не появится :)
Да и я не утверждаю, что этот финт ушами - золотая пуля |
||||||||||
15
Лефмихалыч
18.10.17
✎
20:49
|
(14) да мало ли способов! Форма на клиенте что-то там собирает на клиенте, потом сервер это хрен знает что выполняет, не глядя. Плохая, не годная, идея.
|
||||||||||
16
Сергиус
18.10.17
✎
21:05
|
(13)Ну там не совсем произвольный..все-таки для этого надо добавить элемент формы или модифицировать существующий, при том еще надо точно знать какой.
|
||||||||||
17
Лефмихалыч
18.10.17
✎
21:12
|
хотя, это Вычислить, а не Выполнить. Оно же что угодно не выполнит.
В целом, наверное, не страшно. Но стрёмно один хрен. Брало б оно с сервера то, что выполняется и была б гарантия, что только админ может этот текст править. Да и тоже бы стрёмненько было. Такие штуки приводят к заявкам на сапорт с ошибкой в строке 1 несуществующего модуля. И ищи потом, как хирург свищи, где оно там подтекает у тебя... |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |