VK Video
Какая секция кодов в настройках поля вычисляет значение поля?
Секция код.
Как взять значение поля из текущей таблицы?
Очень просто — #name_field
. Вместо name_field
нэйм нужного вам поля. Как только вы поставите решетку и начнете набирать либо name
, либо заголовок поля он предложит вам варианты.
Еще вы можете взять name
поля кликнув на нем — оно копируется в буфер обмена. То же самое с name
таблицы.
Как взять параметр вычисляемый другой строкой?
Для этого используется $code_row_name
. Строка же обозначается как code_row_name:
Например код вычисления НДС от общей суммы:
=: #summ / $calc * #bid
calc: 100 + #bid
Код начнет выполнятся от =:
и
возьмет значения полей summ
и bid
увидит ссылку на строку calc
Вычислит calc
и подставит получившееся значение в формулу
Закончит вычисление и запишет получившееся значение в поле
Каким образом именуются строки кода?
Строка кода обозначается как code_row_name:
.
Если кликнуть на ней дважды - подсветится все ее использование в коде — все места, где она вызывается по $code_row_name
.
Какая строка кода является стартовой?
Для кодов это всегда =:
Как ставить комментарии в кодах?
Очень просто — // текст коментария
. Например:
=: #summ / $calc * #bid
// вычисляем делитель в зависимости от ставки
calc: 100 + #bid
Можно ли структурировать код отступами?
Да, при помощи tab
и space
. Рекомендуем пользоваться только tab
.
В каком порядке выполняются математические операции?
В том, в котором они написаны. Те:
=: $A + $B / $C
A: 10
B: 2
C: 3
При выполнении этого кода А
будет сложено с B
и потом поделено на C
— получится 4
.
Можно ли использовать скобки без дополнительного указания на математическую операцию?
Скобки просто так использовать нельзя. Дело в том, что они обозначают функции, а не математические действия.
Но есть такая возможность:
=: math`($A + $B) / $C`
A: 10
B: 2
C: 3
При выполнении этого кода А
будет сложено с B
и потом поделено на C
— получится 4
.
А если так:
=: math`$A + $B / $C`
A: 10
B: 2
C: 3
То в специальном теге math
+ выделение засечками
операции будут выполнены как в математике. При выполнении этого кода B
будет поделено на C
и потом сложено с A
— получится 10.6666666666
.
Значимы ли отступы между элементами кода?
Нет. Есть пробелы или нет неважно. Но хорошей практикой является оформление кода с пробелами:
= : #f_order_summ - $pay_summ
pay_summ: listSum(list: $list)
list: selectList(table: 'paylist'; field: 'summ'; where: 'order' = $#nci)