Дополнительный реквизит тип число длина целой части числа превышает максимально возможную на 8.3.21.1775

1. Xershi 1486 12.10.23 16:24 Сейчас в теме
Добрый день, коллеги!
Словил баг!
1С:Комплексная автоматизация 2 (2.5.14.59)
1С:Предприятие 8.3 (8.3.21.1775)
Дополнительный реквизит тип число (17, 5)
Хочу поменять на тип число (15, 2), но выдает ошибку:
длина целой части числа превышает максимально возможную

Методом проб и ошибок выяснил, что Число(15, 3-5) можно создать. Похоже разработчики допустили ошибку в вычислении допустимых вариантов. И все идет от цифры 17, но правда в обратном порядке, как будто длина у нас (17,0). Но кода логики платформы не видим, ошибки тоже не видно.
Попробуем обновить платформу.
Прикрепленные файлы:
Найденные решения
11. Xershi 1486 13.10.23 17:49 Сейчас в теме
(9) проверил ваш комментарий, действительно. Я не правильно понимал разрядность. Первое число определяет максимум цифр, а вторая показывает сколько от нее отбирается в дробную часть. Поэтому то, и такая ошибка. Фактически у нас 12 целых и 5 дробных. Поэтому тип число(15,3) даст создать. У нас 12 целых и 3 дробных. А вот тип число(15,2) не даст создать, потому что целых уже будет 13, а у нас из 17 под целые только 12.
Я всегда думал, что первая цифра показывает, сколько целых чисел, а не сколько итого.
user712426; +1 Ответить
9. RustamZz 13.10.23 16:43 Сейчас в теме
(8) Вы не правильно считаете разрядность 17 всего в т.ч. 5 после запятой. Какие еще вы мне задачки дадите порешать? 12 максимум во всех ваших примерах.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Xershi 1486 12.10.23 16:33 Сейчас в теме
Проверил на другой базе.
1С:Предприятие 8.3 (8.3.17.1549)
1С:Предприятие 8.3 (8.3.23.1688).
Проблема осталась.
А в списке ошибок даже нету про это упоминания.
3. RustamZz 12.10.23 16:47 Сейчас в теме
(2) Это не платформенное.
Прикрепленные файлы:
4. Xershi 1486 13.10.23 14:02 Сейчас в теме
(3) у меня стоит число (17,5) в шапке указал этой. Вы пробовали поставить в дополнительном реквизите число(15,2) и число(15,3)? Не в конфигураторе, а в дополнительном реквизите?
Число(15,3) даст сделать, а число(15,1) или число(15,2) получите ошибку, хотя 17 целых и 5 дробных должно в любой комбинации давать.
5. RustamZz 13.10.23 14:07 Сейчас в теме
(4) 17-5 =12. Максимум 12 до запятой может быть знаков. И максимум 5 после.
6. Xershi 1486 13.10.23 15:06 Сейчас в теме
(5) не правильно понимаете математику. Число(12, 0-5), число(13,1-5), число(14,2-5), число(15,3-5), число(16,4-5), число(17,5). Вот список типов число которые можно создать без этой ошибки. При длине меньше 13, уже проблем нет, но каждый разряд выдает ошибку, в обратном порядке. 13+0, это же те же 13, а 13,1 больше разрядов, но дает!
7. RustamZz 13.10.23 15:08 Сейчас в теме
(6) Мы тут не про математику, а про 1С. Я написал как ограничивает 1С в ПВХ число.
8. Xershi 1486 13.10.23 16:22 Сейчас в теме
(7) объясните тогда почему перечисленное в 6 работает, что с ваших слов не должно работать. Тогда я бы согласился.
9. RustamZz 13.10.23 16:43 Сейчас в теме
(8) Вы не правильно считаете разрядность 17 всего в т.ч. 5 после запятой. Какие еще вы мне задачки дадите порешать? 12 максимум во всех ваших примерах.
10. Xershi 1486 13.10.23 17:30 Сейчас в теме
(9) создал 17,5. В программе тип данных у доп реквизита будет число(17,5) но на форме действительно видно только 12 разрядов. С такой логикой тогда все что больше 12, должно было выдавать ошибку, но выдает только, когда на 1 разряд больше по сумме.
Прикрепленные файлы:
11. Xershi 1486 13.10.23 17:49 Сейчас в теме
(9) проверил ваш комментарий, действительно. Я не правильно понимал разрядность. Первое число определяет максимум цифр, а вторая показывает сколько от нее отбирается в дробную часть. Поэтому то, и такая ошибка. Фактически у нас 12 целых и 5 дробных. Поэтому тип число(15,3) даст создать. У нас 12 целых и 3 дробных. А вот тип число(15,2) не даст создать, потому что целых уже будет 13, а у нас из 17 под целые только 12.
Я всегда думал, что первая цифра показывает, сколько целых чисел, а не сколько итого.
user712426; +1 Ответить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот