Добрый день! Возникло 3 вопроса по поводу расчета запасов. 1). В результате суммирования по категориям в процессе округления получаются разные запасы 809 и 807. 2). При наличии второго яруса в ТО выводится меньшая цифра, чем в БД. Похоже сначала суммируются запасы ярусов , затем умножается на площадь, и уже затем округляется. В данном случае получается не 2450, как в ТО, а 2457, что округляется до 246 дес., и уже эта цифра используется при всех расчетах. 3). При маленьком запасе в ТО меньше 10, ставится просто пустая ячейка, а в БД округляется уже до 1 дес. Подскажите пожалуйста, где какие галочки поставить, чтобы в ТО и БД запас округлялся, рассчитывался и выводилось одинаково? Похоже я что-то просмотрел
Округление запасов в ТО и БД. РЕАЛИЗОВАНО.
Сообщений 1 страница 14 из 14
Поделиться206.12.2018 17:33:42
1). В результате суммирования по категориям в процессе округления получаются разные запасы 809 и 807.
Все правильно. Запасы по категории получаются запросом к базе, а сумма запасов выделов - запросами к каждому выделу. И, поскольку, каждый запрос - вычисляемое значение, мы получаем два разных алгоритма получения итога. Для снижения невязки округления мы держим в базе всегда "неокругленные" исходные значения, а округляем на последнем этапе получения показателя. Например:
200.3 пишем 200, 300.3 пишем 300, сумма = 500
по категории 200.3+300.3=500.6 сумму пишем 501
И чем больше в задаче вложенных итогов тем больше вероятность невязки округления.
Более подробно про округления у нас написано тут:
http://lesis.mybb.ru/viewtopic.php?id=19#p97
см. первый пункт.
2). При наличии второго яруса в ТО выводится меньшая цифра, чем в БД. Похоже сначала суммируются запасы ярусов , затем умножается на площадь, и уже затем округляется. В данном случае получается не 2450, как в ТО, а 2457, что округляется до 246 дес., и уже эта цифра используется при всех расчетах.
Здесь то же самое:
23*9.1=209.3 - в ТО пишем 209
4*9.1=36.4 - в ТО пишем 36
Общий запрос к базе по категории будет 209.3+36.4=245.7, а это по правилам округления 246.
3). При маленьком запасе в ТО меньше 10, ставится просто пустая ячейка, а в БД округляется уже до 1 дес.
За это округление отвечает строка 186 файла:
c:\Program Files (x86)\LesIS\TopoL_L2\Xml\TaxOps.xml
она округлит малые величины либо до 1, либо до 0.
Подскажите пожалуйста, где какие галочки поставить, чтобы в ТО и БД запас округлялся, рассчитывался и выводилось одинаково? Похоже я что-то просмотрел
Округления в ТО настраиваются в указанном выше файле. Округления в базе настраиваются в параметрах базы данных - ПравКнопМыши на участковом лесничестве "Параметры субъекта - Параметры - Править параметры". Только сохраните копию базы если будете менять в сторону огрубления. Можете что то не додумать или забыть... откат будет невозможен.
Но манипуляции с параметрами ТО и базы дадут мало-мальский результат только в одном случае - если Вы откажетесь от каких бы то ни было округлений и всегда будете работать с минимально возможными значениями дробной части.
А пока у Вас, а точнее не у Вас, а в НПА, в одном месте - кбм... в другом - декастры... в третьем - тысячные... а в таблицах у Вас по 2-3 вложенных итога никакими настройками округлений Вы полного совпадения никогда не найдете. Это аксиома.
Поделиться307.12.2018 11:34:43
Хорошо. Тогда как сделать, чтобы показывало в 10 кбм, но с одним знаком после запятой. Когда делаю вот так:
<Zap_EdIzm>10</Zap_EdIzm> <!--1 кбм, 10 десятки кбм. В этой форме сотни и тысячи не допустимы.-->
<Zap_Round>-1</Zap_Round> <!--Число знаков после запятой: 0 - целые, -1 - один знак, -2 - два знака-->
<Zap_RoundPlus1>1</Zap_RoundPlus1> <!--Выводить малые величины с округлением на знак больше. 1 - Да. 0 - Нет.-->
то как ни удивительно сухостой в 10 кбм, с запятой, а нормальный лес нет. Что куда поставить?
Поделиться408.12.2018 00:00:38
то как ни удивительно сухостой в 10 кбм, с запятой, а нормальный лес нет.
Посмотрим.
Поделиться519.12.2018 09:49:23
то как ни удивительно сухостой в 10 кбм, с запятой, а нормальный лес нет. Что куда поставить?
Почти поправили. В ближайшей версии постараемся выложить.
Поделиться629.12.2018 11:50:01
то как ни удивительно сухостой в 10 кбм, с запятой, а нормальный лес нет. Что куда поставить?
Почти поправили. В ближайшей версии постараемся выложить.
Поправлено в версии 780. Она сегодня выложена, пробуйте.
Поделиться823.08.2019 09:27:55
Скриншоты приложены
На первых двух картинках показаны настройки того, что Вы хотите записать в базу! И, кстати, к целочисленности это не имеет никакого отношения - речь, если внимательно прочитаете текст первого скриншота - об округлении значений до десятков. А целочисленность в базе настраивается в параметрах базы. Описано тут:
http://www.lesis.ru/infot/les_setting.html
Читайте как обратиться к параметрам базы в конце страницы - "Настройки таксационных баз данных".
А на третьем скриншоте у Вас изображена отчетная форма - таксационное описание! Там округления свои и настраиваются через файл настройки отчета:
c:\Program Files (x86)\LesIS\TopoL_L2\Xml\TaxOps.xml
Смотрите строку 185:
<Zap_Round>-1</Zap_Round> <!--Число знаков после запятой: 0 - целые, -1 - один знак, -2 - два знака-->
Там же есть файлы настройки некоторых других отчетов.
Настройки базы и настройки отчетов - разные понятия! И определяются разными требованиями НПА. Будьте с этим внимательнее.
Поделиться926.08.2019 08:00:45
Спасибо за разъяснение, разобрались
Поделиться1003.12.2021 12:34:57
Как убрать нумерацию страниц в таксационном описании?
Поделиться1103.12.2021 15:09:57
Как убрать нумерацию страниц в таксационном описании?
В файле c:\Program Files (x86)\LesIS\TopoL_L2\Xml\TaxOps.xml в строке 196:
<PageNumber>0</PageNumber> <!--Номера страниц. 1 выводить. 0 не выводить.-->
Номер первой титульной странцы удаляете в 201 строке заменив 1 на пробел.
Только что проверил - работает.
1. Убедитесь, что у Вас актуальная версия.
2. Убедитесь, что при внесении изменений в файл Тополь был выключен, права - администратора и в файле при закрытом тополе видны Ваши изменения.
3. Убедитесь, что ворд сам не расставляет страницы принудительно - возможно, у Вас стоит какой то режим автонумерации.
Поделиться1307.06.2022 16:43:22
Как убрать из таксационного описания дес. , оставив только кбм. ?
<Zap_EdIzm>10</Zap_EdIzm> <!--1 кбм, 10 десятки кбм. В этой форме сотни и тысячи не допустимы.-->
Меняете 10 на 1. Программа сама подставит в шапку нужное значение переменной @010:07.
Округление я как понимаю нужно поправлять строку 185 ?Чтобы запас на выделе и запас на га были целыми числами.
У нас с Вами разные номера строк. Нужна вот эта:
<Zap_Round>-1</Zap_Round> <!--Число знаков после запятой: 0 - целые, -1 - один знак, -2 - два знака-->
Меняете -1 на 0.
Поделиться1407.06.2022 17:27:49
Спасибо. Все получилось.
Пост написан 07.06.2022 17:19:06