Это вопрос из той же категории, что и товаризация по выборочным. Или, какой процент указываем - от общего запаса или от допустимого. Решился бы легко если сделать % выборки по породам. А обобщенно мы упремся в ситуации, когда % выборки превысит запас, остающийся от исключения запрещенных пород. Надо подумать как сделать лучше. Я понимаю, что узаконить проценты по породам с нашими законотворческими "умами" не получится.
Чтобы понять как и что учитывать при расчете лесосеки выборочной рубки, достаточно обратить внимание процесс отвода лесосеки под выборочную рубку в многопородных лесах. Как производится отвод: берут назначение из пол, процент от корневого и погнали отмечать деревья в рубку. Первым же делом - всю наиболее ценную и товарную древесину тех пород, на которые есть заказ. В том же примере, где выдел с орехом - отмечают весь товарный дуб. То же и будут рубить.
Увы, но распределять вырубаемый запас по породам лесозаготовитель не желает. И никто его не обязывает. Ясен пень почему.
берут назначение из пол, процент от корневого и погнали отмечать деревья в рубку.
При отводе если выбираемый запас разрешенных пород "закончился раньше времени" человек принимает решение что делать. Программа не человек и методы процедурного программирования остались в далеком прошлом - все делается на SQL запросах. И в результате мы снова можем получить расхождение только по другой причине. Сейчас Вы недобираете объем за счет занижения % рубки, а будете - за счет нехватки объема в выделах, где доля запрещенных пород будет конфликтовать с % вырубаемого. Об этом и спрашиваю - что будем делать если % выборки окажется выше % допустимых пород!? Я понимаю, что таких случаев будет не много, но они могут быть и программе по барабану на это.
Я думал. Есть вариант. Расчёт (для выборочных рубок) подсвечивать красным, как ошибку, если перебор. В ручном режиме снижать % выборки до оптимального.
Есть вариант. Расчёт (для выборочных рубок) подсвечивать красным, как ошибку, если перебор. В ручном режиме снижать % выборки до оптимального.
Это не вариант с точки зрения решения задачи. Это пожелание по интерфейсу... )) А с точки зрения решения не так все просто, так как требует усложнять запросы проверочными условиями. Проверки при запросах - это моветон программирования. Правильнее менять структуры баз и логику их содержательной части. Иначе мечты про всякие там "серверные технологии" лучше забыть. Все федеральные АИСы потому и куекнулись, что не удосужились причесать сущностную часть, и "залепляли" дыры вот такими "исключениями"... Последние имеют особенность разрастаться и снижать производительность и устойчивость системы в целом.