Ошибка SQL: Arithmetic overflow error converting numeric to data type numeric

Публикация № 1503813 25.08.21

База данных - Администрирование СУБД

Ошибка SQL Arithmetic overflow error

Считаю количество строк в таблицах БД. Выскакивает ошибка. Привожу описание моего случая и решение.

По запросу "Arithmetic overflow error converting numeric to data type numeric" есть куча обсуждений и очень мало записано решений. Мой случай, вероятно, частный, но кого-то подтолкнет в направлении "куда копать".

SQL 2016 Standard
Платформа 8.3.18

При выполнении запросов к БД типа:

Выбрать Сумма(1) Из РегистрНакопления.ТоварыКПоступлению
Выбрать Сумма(1) Из Документ.ПриобретениеТоваровУслуг.Товары

Когда, количество строк > ~10 000 000, выдавалась ошибка:

Microsoft SQL Server Native Client 11.0: Arithmetic overflow error converting numeric to data type numeric.
HRESULT=80040E57, SQLSrvr: SQLSTATE=22003, state=8, Severity=10, native=8115, line=1

Решение

Выбрать Сумма(Выразить(1 КАК Число(15,0))) Из РегистрНакопления.ТоварыКПоступлению

Добавлено преобразование типа Число к конкретной длине. Баг перестал воспроизводиться.

Коллеги, если сталкивались с ошибкой, в комментариях опишите причину сбоя, и, если знают - другие способы устранения.

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. kser87 2360 25.08.21 12:29 Сейчас в теме
Видимо превышается предельное значение для типа int . Можно создать втшку и посмотреть, какой тип он назначит для поля 1
2. user1350278 25.08.21 14:25 Сейчас в теме
int до 2 147 483 647, не думаю, что такое кол-во записей в регистре.

Скорее всего, это игры 1С/MSSQL с precison numeric. Например, рассматривает 1 как Numeric(7,0), пытаясь к нему преобразовать результат СУММА(1).

P.S.
В конкретном примере использование "Сумма", по-моему, неоправдано, ибо Количество(*), скорее-всего выполнится верно.
( а если есть еще индекс по одному из измерений и делать COUNT(OUR_FIELD), то и full index scan не так страшен).

Советы по использованию "Выразить", наверное, относятся к случаю, когда вместо литерала суммируют что-то более осмысленное.

Лезть в профайлер и смотреть во что 1С превращает 1, неохота.
3. SerVer1C 627 25.08.21 16:29 Сейчас в теме
Для подсчета кол-ва записей лучше юзать:
Выбрать Количество(1) Из РегистрНакопления.ТоварыКПоступлению

ну а если нужна сумма, то можно применить такой костыль:
Выбрать Сумма(0.001) Из РегистрНакопления.ТоварыКПоступлению
получите сумму в тысячах )
Nikola23; triviumfan; kser87; +3 Ответить
4. triviumfan 79 31.08.21 15:22 Сейчас в теме
Давно заметил эту ошибку, но создавать публикацию по этому поводу...
5. Nikola23 667 01.09.21 08:12 Сейчас в теме
(4) мысль автора комментария по-моему осталась не законченной.
Заметил и что?
Если решил, то как?
Если знаете решение - почему не поделиться с сообществом?
Кто знает о вашем достижении?

Если по существу - то вы молодец.
6. triviumfan 79 01.09.21 15:53 Сейчас в теме
(5) Ну, а зачем мне делиться, если эта ошибка стара как... и гуглиться за секунды.
https://forum.mista.ru/topic.php?id=545119
http://www.gilev.ru/arithmeticoverflow/
https://forum.infostart.ru/forum9/topic183137/

(5)
Если по существу - то вы молодец.

Не могу ответить тем же.
7. Nikola23 667 02.09.21 10:13 Сейчас в теме
(6) наверное, мой навык гугления не такой как ваш.
Видел эту статью.
Там SQL древний описан и я не стал ее читать (зря).

Ничего страшного, если решение будет записано еще раз с указанием более свежей версии SQL.
8. alexey.kutya 291 13.01.23 23:46 Сейчас в теме
У меня такая ошибка возникла, когда дробная часть числа получаемого в запросе выражением превысила какое-то количество знаков. Помогло ВЫРАЗИТЬ с ограничением знаков дробной части.
Оставьте свое сообщение

См. также

Первый день архитектора 1С на новой работе

Мониторинг Сервера Администрирование СУБД Бесплатно (free)

Как быстро познакомиться с системой на новой работе или если вас пригласили провести аудит контура на 1С? О том, какие инструменты использовать для быстрой проверки настроек сервера 1С, сервера MS SQL и общей оценки инфраструктуры на производительность, на конференции Infostart Event 2021 Post-Apocalypse рассказал архитектор 1С Юрий Былинкин.

01.06.2023    4616    ardn    15    

57

Распространённые ошибки при установке PostgreSQL для 1С и реализация их устранения в продуктах компании Postgres Professional

Администрирование СУБД Бесплатно (free)

На конференции Infostart Event 2021 Post-Apocalypse выступил релиз-инженер компании Postgres Professional Александр Суботко. Он привел примеры частых ошибок при создании кластера PostgreSQL для 1С и рассказал, как продукты PostgresPro помогают их избежать.

30.05.2023    1976    Botofill    6    

37

Как система обмена данными помогает решить нетривиальные задачи, характерные для терабайтных баз: обрезка, обслуживание, балансировка нагрузки и другие

Администрирование СУБД Бесплатно (free)

Когда объем баз данных начинает превышать несколько терабайт, обеспечивать должное качество функционирования информационной системы становится всё сложнее и дороже. О том, как с помощью системы обмена данными решать для терабайтных баз задачи обрезки исторических данных, балансировки нагрузки, создания тестовых копий с актуальными данными, а также обслуживания индексов и статистик без технологического окна, на конференции Infostart Event 2021 Post-Apocalypse рассказал руководитель направления роботизированного обмена данными в компании Софтпоинт Алексей Чивтаев.

30.05.2023    2036    user1456023    0    

5

Переход с 1С:Шины 2.1.1 на 3.1.1 под Ubuntu [Квест]

Linux Администрирование СУБД Бесплатно (free)

О том, как переход с 2.1.1 на 3.1.1 оказался нелегким из-за соблюдения рекомендаций.

24.05.2023    913    dsdred    0    

12

Разворачиваем 1С:Шину на Ubuntu и Windows [Шпаргалка]

Администрирование СУБД Бесплатно (free)

Пошаговая инструкция по инсталляции 1С: Шины на Ubuntu и краткая на Windows Server. Проблемы и их обходы присутствуют.

02.05.2023    3631    dsdred    20    

49

Ошибка при выполнении файловой операции /Params/DBNames - [РЕШЕНО]

Обновление 1С Администрирование СУБД Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В статье рассказывается про методы борьбы с ошибкой при выполнении файловой операции Ошибка при выполнении файловой операции /Params/DBNames.

10.04.2023    2154    ak0710    8    

7

Эффективное управление фоновыми заданиями и коммуникация сеансов сервера с Фоном с помощью Структуры обмена (ноу-хау) + Бонус: Альтернативный вариант через Хранилище настроек

HighLoad оптимизация Администрирование СУБД Платформа 1С v8.3 Платформа 1C v8.2 Россия Абонемент ($m)

Как эффективно управлять Фоновым заданием, так чтобы Приложение-клиент могло МГНОВЕННО в реальном времени получать и передавать данные и команды в этот процесс. Преимущества и недостатки вариантов обменов с Фоном с помощью Структуры Обмена и через Хранилище настроек. Демо реальной работы 2-х вариантов, с расчетом производительности и потерь данных. + Бонус (Тестовая обработка с Демо-версией компоненты Структуры Обмена со всеми примерами работы с Фоном через Обычное приложение и Управляемые формы (Тонкий и Толстый клиент). НОВОЕ: 1) Управление фоновым процессом в версии 1С:8.1 с помощью Структуры обмена через интерфейс IDispatch (COMОбъект). 2) Управление фоновым заданием (эмуляция фона через автозапуск 2-го сеанса в режиме OLE-Auto) в версии 1С:8.0 также через IDispatch.

1 стартмани

06.04.2023    1968    1    ksuman    12    

4

База для управления базами. Монстр или Франкенштейн?

Администрирование СУБД Бесплатно (free)

Если компания обслуживает большое количество разнородных баз 1С, рано или поздно возникает вопрос – как ими управлять из одного места, и стоит ли вообще это делать? О том, как реализовать единый интерфейс для запуска различных баз, разграничить к ним доступ, научиться управлять автообновлением конфигураций, автоматизировать отслеживание проблем и многое другое, на конференции Infostart Event 2021 Post-Apocalypse рассказал ведущий разработчик компании WiseAdvice.Tech Дмитрий Фурцев.

31.03.2023    1256    Fudj1k    1    

9

SQL. Опять переезд баз 1С

Администрирование СУБД Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Автоматизируем переезд файлов баз данных 1С внутри SQL сервера с диска на диск средствами SQL.

1 стартмани

13.03.2023    2688    1    VPanin56    2    

9

Структура хранения базы данных в конфигурации системы 1С:Предприятие

Администрирование СУБД Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В данной статье рассматривается организация структуры хранения данных, которые представлены в виде таблиц и связаны друг с другом ссылками в системе программы 1С:Предприятие.

13.03.2023    1682    Koder_Line    1    

-2

Новое в 14-й и 15-й версиях Postgres

Администрирование СУБД Бесплатно (free)

Иван Панченко, заместитель генерального директора Postgres Professional, на конференции Infostart Event 2022 Saint Petersburg рассказал о новшествах 14-й и 15-й версий PostgreSQL. Часть из них повышает производительность Postgres, часть – необходима для наиболее удобной работы, а некоторые, в дополнение, весьма полезны и для платформы 1С. В докладе приводятся практические примеры и результаты оригинальных тестов.

10.02.2023    2606    i.panchenko    0    

8

Командная строка - это просто, или три примера автоматизации рутины

Администрирование СУБД Платформа 1С v8.3 Бесплатно (free)

В статье показаны несложные примеры автоматизации рутинных действий, встречающихся в работе любого программиста. Только платформа и командная строка, только хардкор.

31.01.2023    1963    zeltyr    7    

25

Как исправить ошибку формата потока данных в 1С:Предприятие 8.3?

Администрирование СУБД Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Доброго времени суток! Уважаемый читатель, в данной статье будет рассмотрена сущность такого понятия, как «Ошибка формата потока», причины ее появления, а также методы устранения ошибки. Если Вы с ней столкнулись, эта статья специально для Вас!

25.01.2023    14585    Koder_Line    4    

4

Реструктуризация базы в 1С: для чего требуется и о назначении в целом

Администрирование СУБД Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В статье расскажем о том, как в 1С:Управление торговлей происходит реструктуризация таблиц информационной базы и почему это требуется производить регулярно.

07.12.2022    2978    Koder_Line    4    

4

Пример автоматизированного управления публикацией списка баз

Анализ и проектирование ИТ-систем Администрирование СУБД Бесплатно (free)

Данная публикация в художественном стиле описывает путь нашей команды по решению задачи автоматизации публикаций списка 1С-систем.

29.11.2022    975    Elaks    4    

9

Работа с файлом *.dt формата

Архивирование (backup) Администрирование СУБД Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В статье расскажем о том, что такое *.dt формат, для чего он применяется, как создать *.dt файл, куда и как загружать*.dt файл, а также дадим некоторые советы по работе с *.dt файлами.

29.11.2022    4445    Koder_Line    5    

-4

Автоматическая блокировка доступа пользователей по данным 1С:Зарплата и управление персоналом, редакция 3.1

Администрирование СУБД Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Внешняя обработка, выполняющая автоматическую блокировку доступа пользователей в конфигурациях на базе 1С:Библиотека стандартных подсистем по данным 1С:Зарплата и управление персоналом, редакция 3.1.

1 стартмани

14.11.2022    1867    1    mayz    0    

5

Реестр программ

Администрирование СУБД Мониторинг Абонемент ($m)

Учет необходимых программ на компьютере (установленные и дистрибутивы) для мониторинга, что установлено и, если не установлено, то упрощение установки.

1 стартмани

10.10.2022    2330    2    CaSH_2004    1    

5

Регистрация в центре лицензирования не выполнена

Администрирование СУБД Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Каждый пользователь программ 1С сталкивался с ситуацией, когда при входе в программу 1С появляется всплывающая картинка с информацией, что «Регистрация конфигурации в центре лицензирования не выполнена», которая появляется и мешает нам работать. При этом такая ситуация может возникнуть в любой конфигурации 1С.

28.09.2022    2593    Koder_Line    2    

2

Устройство хранения данных в MS SQL Server

Администрирование СУБД Бесплатно (free)

База данных SQL Server - это коллекция объектов, позволяющая хранить данные и управлять ими. В теории каждый экземпляр SQL Server поддерживает до 32 767 баз данных, но обычно на нем развернуто не больше десятка баз. Очевидно, что количество баз данных, которые SQL Server может обрабатывать зависит от нагрузки и оборудования. В этой статье мы обсудим внутреннюю структуру баз данных и то, как SQL Server хранит данные.

12.09.2022    5777    Irwin    20    

36

Ring 1С - как скрыть предупреждение "Незаконный рефлексивный доступ" в Java 11

Администрирование СУБД Россия Бесплатно (free)

Как скрыть сообщение "WARNING: An illegal reflective access operation has occurred...." при использовании ring license list последней версии.

08.09.2022    1418    Ganz911    1    

9

Панель Управления Сервисами и Компонентами (ПУСК)

Инструменты администратора БД Администрирование СУБД Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

С самого начала нашей деятельности мы серьезно занимаемся задачами комфортного функционирования и миграции экосистемы 1С в среду Linux. К тому же по известным причинам в последнее время объем подобных проектов резко вырос. Мы хорошо понимаем все неудобства, возникающие у наших партнеров и клиентов, связанные с необходимостью выполнения рутинной работы в командной строке. Особенно эта боль обостряется, когда серверов – не один, GUI отсутствует, а информационных баз уже несколько сотен. Поэтому в помощь своим коллегам и ИТ-командам наших клиентов разработали кроссплатформенную консоль управления серверами 1С, которую назвали «Панель Управления Сервисами и Компонентами» - если коротко, «ПУСК». А потом подумали и решили помочь всему сообществу 1С в борьбе с зависимостью от командной строки путем публикации этого приложения в открытом доступе для бесплатного использования.

22.08.2022    7706    243    it-expertise    72    

70

Workaround me в 1С/MS SQL и не только, системный подход к созданию костылей

HighLoad оптимизация Администрирование СУБД Платформа 1С v8.3 Бесплатно (free)

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

15.08.2022    1409    1CUnlimited    0    

6

Ошибка Dump в 1С

Администрирование СУБД Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В данной статье будет рассмотрено представление ошибки Dump в 1С, будет проведена её диагностика, а также определено, как устранить данную ошибку и продолжить дальнейшую корректную работу системы 1С. Также будет представлена общая информация об ошибке Memorydump, для более глубокого её понимания.

15.07.2022    2340    Koder_Line    3    

4

Режимы запуска системы 1С:Предприятие

Администрирование СУБД Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Существует несколько путей установки режимов запуска 1С:Предприятие. Рассмотрим запуски системы в режиме «1С:Предприятие» и в режиме Конфигуратора. Проговорим предварительно, что одновременное использование нескольких режимов не допускается для того, чтобы указать параметры командной строки.

12.07.2022    3073    Koder_Line    1    

6

Поиск текущих блокировок СУБД, вызванных 1С

Инструменты администратора БД Инструментарий разработчика Администрирование СУБД Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Отчет, отображающий блокировки объектов СУБД на текущее время, вызванные пользователями 1С или фоновыми заданиями.

5 стартмани

07.07.2022    3966    41    nikolasx    9    

13

Решение проблем подвисания 1С “в онлайне”. Инструмент - консоль управления блокировками и процессами 1С и PostgreSQL (MS SQL - тестируется)

HighLoad оптимизация Администрирование СУБД Платформа 1С v8.3 Управляемые формы 8.3.14 Конфигурации 1cv8 Абонемент ($m)

Обработка-консоль, улучшенная версия консоли администрирования 1С для решения проблем с производительностью, поиска и устранения блокировок и длительных запросов. Тестировалось на платформе 8.3.14, 8.3.17, 8.3.20 УФ.

1 стартмани

04.07.2022    7512    65    victor_goodwill    23    

38

OneScript на страже порядка на сервере тестовых баз данных

Администрирование СУБД OneScript Бесплатно (free)

Наводим порядок на сервере тестовых баз с помощью любимого инструмента - OneScript. Находим заброшенные базы на сервере MS SQL, определяем кандидатов на удаление.

14.06.2022    2451    ardn    23    

35

Обслуживание баз данных 1C на Postgresql под Astra Linux

Администрирование СУБД Инструменты администратора БД Linux Платформа 1С v8.3 Абонемент ($m)

Эта публикация для тех специалистов 1С, которые развернули сервер 1С и сервер PostgreSQL под Astra Linux и которым не интересно работать в командной строке, выполняя «шаманские» скрипты для автоматического сохранения и восстановления баз. Возможно вам тоже будет удобно обслуживать базы данных PostgreSQL решением на платформе 1С.

10 стартмани

14.06.2022    7602    13    alfanika    11    

22

Оптимизация высоконагруженных конфигураций: история маленькой победы, или советы тем, кто столкнулся с проблемой впервые и не знает, что делать

HighLoad оптимизация Администрирование СУБД Платформа 1С v8.3 8.3.14 1С:ERP Управление предприятием 2 Россия Бесплатно (free)

Пост будет больше интересен руководителям отделов ИТ сопровождения или проектным менеджерам, перед которыми будет стоять задача решения проблемы деградации производительности баз данных 1С. Пост для тех, кому эта тема нова, нет особого опыта, и с ходу непонятно, с чего начать.

24.05.2022    4321    avolsed    15    

33

Базы данных. Несколько шагов до серьезного обслуживания

Администрирование СУБД Бесплатно (free)

Практические примеры настройки обслуживания баз данных для SQL Server. Актуально для любых приложений.

22.05.2022    15001    Infostart    24    

235

Ошибка формата потока расширения

Администрирование СУБД Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Восстановление базы данных 1С с ошибкой "Ошибка формата потока" с "полетевшим" расширением, когда все остальные методы уже испробованы.

19.05.2022    1740    yupi71    9    

7

Пропадающие файлы на томе в 1С: КА 2.5

Администрирование СУБД Платформа 1С v8.3 1С:Комплексная автоматизация 2.х Россия Бесплатно (free)

На протяжении месяца пропадали файлы: прикрепленные изображения, документы в ЭДО. КА 2.5, актуальная редакция на поддержке. Этого не описано НИГДЕ и если бы я нашел такую тему, у меня мы было гораздо меньше проблем.

05.04.2022    1658    mlashko    7    

10

Ошибка загрузки большого архива 1Cv8.dt в PostgresSQL на платформе 1С 8.3.19

Администрирование СУБД Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

1С для платформы 8.3.19 ускорили загрузку dt-файлов за счет разбивки на несколько фоновых заданий. В итоге словили ошибку блокировки при загрузке в СУБД PostgresSQL большого 1cv8.dt-файла размером 25 Gb "ERROR: canceling statement due to lock timeout". Напишу, как в итоге загрузили этот dt-файл.

30.01.2022    11450    sapervodichka    58    

136

Ограничение количества запущенных процессов 1С в разрезе пользователей

Администрирование СУБД Бесплатно (free)

Целью данной статьи является описание решения для ограничения количества, запускаемых пользователем, процессов 1С, чтобы снизить нагрузку на сервер. Может пригодиться как программистам, так и системным администраторам. ОСТОРОЖНО! под катом Python=)

28.01.2022    2085    KOTzilla    7    

7

SAMBA для 1С

Администрирование СУБД Платформа 1С v8.3 Россия Бесплатно (free)

Представлен необходимый минимум настройки SAMBA для работы файловых баз 1С через общий ресурс.

24.12.2021    5788    compil7    6    

14