Имя: Пароль:
1C
 
Ошибка арифметического переполнения при преобразовании numeric к типу данных numeric
,
0 repin_mike
 
15.04.22
10:16
ЕРП 2.4.14.78
При попытке отражения в регл учёте Переоценки ОС выкидывает ошибку, в ЖР запись:
Не удалось сформировать движения по документу Переоценка ОС ЧЗЦБ-000233 от 31.12.2021 23:59:59, по причине:
Ошибка при выполнении операции над данными:
Microsoft SQL Server Native Client 11.0: Ошибка арифметического переполнения при преобразовании numeric к типу данных numeric.
HRESULT=80040E57, SQLSrvr: SQLSTATE=22003, state=8, Severity=10, native=8115, line=1

Посмотрел запрос, в результате которого появляется такая ошибка, как рекомендуют в интернетах поменял ВЫРАЗИТЬ .. КАК ЧИСЛО(31,2) на ЧИСЛО(38,2) - не помогло.
Проводки-то ладно, можно нарисовать вручную, но я думаю 99% то же самое будет при закрытии месяца.
Что ещё можно предпринять?
1 lodger
 
15.04.22
10:19
(0) не заниматься сложной математикой в запросе. сложнее чем 2+2 или сумма(рыбок).
2 repin_mike
 
15.04.22
10:22
(1) Отличное пожелание, можете направить сюда https://1c.ru/rus/support/hline.htm
3 Михаил Козлов
 
15.04.22
10:51
Может разрядность целой части в запросе уменьшить? Зачем Вам 36 знаков перед запятой?
4 repin_mike
 
15.04.22
11:18
(3) Ну из того что я понял как раз ошибка возникает, когда разрядности не хватает. То есть этот многоэтажный запрос в результате выполнения получает где-то цифру, которая не умещается в 38,2


Воспроизвёл в консоли запросов:

ВЫБРАТЬ
    ВЫРАЗИТЬ(999 КАК ЧИСЛО(3, 0)) КАК Поле1 - работает

ВЫБРАТЬ
    ВЫРАЗИТЬ(999 КАК ЧИСЛО(2, 0)) КАК Поле1 - выдаёт такую же ошибку прямо в консоли
5 Михаил Козлов
 
15.04.22
13:18
(4) Тогда ищите деление в запросе. Правда, если делится на число из БД (значение ресурса), там очень маленьких значений не может быть.
Попробуйте временно закомментировать поля, которые получаются делением.
6 mikecool
 
15.04.22
13:25
переполнение скорее от мультиплицирования, может в данных базы есть кривые числа?
7 repin_mike
 
15.04.22
13:28
(6) Переоцениваемое основное средство стоит больше миллиарда. Если поставить стоимость меньше хотя бы на копейку, то переполнения не происходит. Это единственное "кривое" число, которое удалось обнаружить, хотя оно увы и не кривое вовсе.
8 ДедМорроз
 
16.04.22
23:06
Вы чего там - луну продаете ?
9 breezee
 
17.04.22
15:05
может платфоруму обновить? мб уже починили)
10 DimVad
 
17.04.22
18:14
(0) Интересно, а что будет если вообще убрать ВЫРАЗИТЬ ?
11 repin_mike
 
18.04.22
09:28
(8) Ну как бы ЕРП оно не на палатку с обувью заточено
(9) Думаю дело не в платформе
(10) Убрал, всё то же самое
12 shuhard
 
18.04.22
09:50
(11)[Ну как бы ЕРП оно не на палатку с обувью заточено]
в твоей палатке с обувью на ЦКП сэкономили и внедрили сами ?
13 repin_mike
 
18.04.22
12:33
(12) При чём тут сами или не сами, если типовая конфа глючит?
ЗЫ не сами
14 shuhard
 
18.04.22
12:38
(13) т.е. ЦКП слился, вместе с поддержкой 1С ?
15 repin_mike
 
18.04.22
12:58
(14) Т.е. с момента внедрения уже прошло больше года, и гарантия перестала действовать. Поддержка 1С ответила, что на их базе проблема не воспроизводится.
16 shuhard
 
18.04.22
13:44
(15) ну тогда последовательность действий проста:
- обновить копию до 2.4.14.176, возможно ошибка давно исправлена, 78 - прошлогодний и для учета малопригоден
- воспроизвести ситуацию на новом юр.лице в пределах имеющейся учетной системы
- поменять алгоритм отражения в модуле менеджера, путем исключения отдельных ОС
17 PLUT
 
18.04.22
16:02
(0) баянище, исправлял изменением арифметики (сначала делил, потом умножал) в запросе

а так вроде бы уже поправили в типовой. обновляйтесь
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn