Двойное округление расчетных параметров

Имеем объект площадью - 0.0660496 га
Маска параметра ‘ID[0] Площадь’ - /10000 0.000000,
т.е он принимает значение - 0.066050.

А расчетный параметр “=P[0]” (который ссылается на вышеуказанный)
имеет маску 0.0000, и он принимает значение - 0.0661. :confused:

меняем маску ‘ID[0] Площадь’ на /10000 0.0000,
получаем площадь - 0.0660 :unamused:

Вобщем работает двойное округление. :frowning:

Нельзя ли сделать так, чтоб маски параметров влияли только на отображение значений, а в памяти они бы хранились неокругленными? И при ссылке на маскированные параметры использовались бы неокругленные значения.

Я думаю так будет правильней. Ведь если сделать несколько расчетных параметров последовательно ссылающихся друг на друга и каждый будет округлятся, то можно накопить существенную ошибку. :exclamation: (даже один метр как в моем случае - это уже проблема)

Так как есть по крайней мере логично и объяснимо.
Как бы еще больше не запутать.
В дигитале и так слишком много разного необъяснимого. :slight_smile:

А зачем округлять до 6 знаков а потом до четырех? С математической точки зрения это совсем уж неправильно. Так можно и до десятков метров добежать

Действительно, было бы логичнее убрать маску для параметра ID[0], чтобы его значение оставалось с максимальной точностью, а уже для производных параметров задавать маски. По такому же принципу целесообразно делать и с другими параметрами.

“логично и объяснимо” сделано в небезызвестной программе Microsoft Excel:
есть понятие “число десятич. знаков” в формате ячейки - влияет только на внешний вид значения, а в расчет принимается неокругленное значение.

а есть команда “ОКРУГЛ”, которая действительно округляет число.

разные вещи, не правда ли…

Поясню:
нам надо чтоб параметр ID[0]Площадь ОТОБРАЖАЛСЯ в гектарах с точностью 0.000000, поэтому в маске - /10000 0.000000.
Именно этот параметр, т.к. только он показывает суммарную площадь помеченных, а все остальные вычисляемые параметры типа “=P[0]” показывают ‘*’
А “=P[0]” округляется до четырех заков, т.к. именно в таком виде площадь дожна выглядеть на подписях, в выходных документах и экспортируемых файлах.

ХА!.. :laughing: Убираем маску - получаем площадь В МЕТРАХ округленную по умолчанию до двух знаков, т.е. те же гектары до 6-ти знаков. Это максимальная точность?!
Картина в этом случае такая же:
“ID[0]”=660.50, “=P[0]”=0.0661, а на самом деле 0.0660496

Дело то в том что ОКРУГЛЕНИЕ ЕСТЬ ВСЕГДА, по умолчанию до 2-х знаков. И какую точность ни ставь, хоть 0.00000000000000, всегда найдется какой-нибудь случай типа 0.0660499999999 и с ним будут проблемы.

Проблем нет когда у всех параметров одинаковая маска и все они одинаково округляются. Но вот понадобилось нам, чтоб маска была разная. Чтоб видеть полщадь поточнее, а печатать округленную.

Ну так и давайте уберем округление ситемных параметров. Пускай маска действует на них как в Excel’е “формат ячейки”. Будет “логично и объяснимо”.

Кстати цитирую HELP:

Именно “представления значения”, ни слова об округлении.
А на деле?..
Я ж предлагаю сделать как в ХЕЛПе написано :wink:.
Либо не округлять только “фиксированные параметры”.
Либо все параметры не округлять маской, сделав возможность округление какой-то другой командой в том же поле.

На счет метров по умолчанию, я уже пытался попросить разработчиков ввести настройку. Но не вышло :cry:
Если надо изменить систему исчисления заходишь в меню Сервис\разделить по площади. Там выбираешь гектары и нужную тебе точность. Настройки глобально меняют расчеты но только внутри активного объекта :frowning:

Это опять-таки меняется маска параметра ID[0]. гектары - значит маска - /10000

Тоже сомнительная логика. Почему параметры при разделении конкретного участка влияют на исчисление площади во всем файле? :confused:

делить уже ничего не нужно. Программа сама все переводит в гектары. Сумма площадей объектов будет с нужной тебе точностью!

Вот именно! Разные.
И в дигитале как раз и сделано по принципу ОКРУГЛ. А параметры те же ячейки, которые ссылаются одна на одну.

А если проблема в том, чтобы просто видеть общую сумму помеченых объектов, то может её и нужно решать?
Попросим разработчиков вместо * (звёздочки) подсчитывать суммы для вещественых вычисляемых параметров. Ну или функцию какую придумать типа SUM(P), которая подсчитывала сумму по указаному параметру для помеченых объектов.

Поторюсь, цитируя HELP:

А зачем “сделано по принципу ОКРУГЛ”, если “не просят”? Чаще всего это и приводит к сложностям…

Проще функцию ОКРУГЛ придумать, помоему