+5
Это сообщение возникает в том случае, если в алгоритме конфигурации Используется деление и не выполняется проверка значения делителя. Обычно эта ошибка возникает из-за того, что не заполнены какие-либо данные (сумма, количество, коэффициенты и т.п.). Необходимые для работы алгоритма данные должны быть заполнены, например, в документе или справочнике, элемент которого выбран в документе. Обычно эта проблема решается вводом необходимых для работы алгоритма данных и повторным запуском алгоритма (формирования отчета или проведения документов).
Решение:
в коде
Код 1C v 8.х
//Просто проверка на то что Делитель не равен 0
Если Число(ШиринаБумаги) <> 0 Тогда
КолвоБумСПриладкой = КолвоБумаги / Число(ШиринаБумаги);
КонецЕсли;
в запросе:
Код 1C v 8.х
ВЫБОР
КОГДА ПартииТоваровНаСкладахОстатки.КоличествоОстаток = 0 ТОГДА 0
ИНАЧЕ ЕСТЬNULL(ПартииТоваровНаСкладахОстатки.СтоимостьОстаток / ПартииТоваровНаСкладахОстатки.КоличествоОстаток, 0)
КОНЕЦ КАК Себестоимость
Деление на 0: как исправить ошибку в программах 1С?
- Опубликовано 25.01.2022 16:09
- Автор: Administrator
- Просмотров: 17538
Совсем скоро предстоит начислять зарплату за январь в программах 1С. И большинство расчетчиков и бухгалтеров столкнутся с такой ошибкой в базах как «Деление на 0». Почему это происходит и как самостоятельно, не прибегая к помощи программистов, исправить самую частую ошибку января любого года расскажем в данной публикации.
Итак, ошибка выглядит следующим образом:
Возникает она потому, что не указана норма дней на новый календарный год.
Есть несколько причин почему так происходит:
1. Не заполнены графики работы на новый календарный год – это самая популярная ситуация.
В 1С: ЗУП ред. 3.1 они находятся в разделе «Настройка» – «Предприятие» — «Графики работы сотрудников», в 1С: Бухгалтерии предприятия ред. 3.0 — в разделе «Зарплата и кадры» — «Справочники и настройки» — «Графики работы».
По кнопке «Заполнить» сформируется график и ошибка уйдет.
Такие манипуляции необходимо сделать со всеми введенными графиками, в том числе индивидуальными.
2. Неверно заполнен производственный календарь
В вышеуказанных разделах 1С есть производственные календари. Редко, но бывает, что ошибка деления на 0 происходит из-за некорректно заполненного календаря.
На скриншоте приведен календарь на следующий 2023 год. Видите, он полностью красный? Именно так и выглядит эта ошибка. Разработчики к концу 2022 года ее поправят, и норма дней будет считаться корректно.
3. В графике работ все дни помечены как выходные
Да, такое тоже бывает. Иногда пользователи вводят индивидуальные графики сотрудникам, «играются» с их заполнением, но не всегда программа это понимает и порой выдает ошибку деления на 0.
4. Ошибка в формуле расчета
Иногда пользователю необходимо считать зарплату по своим индивидуальным формулам расчета. Но зачастую формула вводится неверно, отсюда и возникает эта ошибка. В этом случае мы рекомендуем обращаться к консультантам 1С. Возможно вашу формулу можно настроить штатными механизмами 1С.
Тут же стоит сказать еще об одной вытекающей из этого пункта ошибке — не верно настроен приоритет видов начислений. Именно в случае когда создается много начислений со своими формулами расчета они начинают конфликтовать со стандартным начислением оплаты по окладу.
Так что, друзья, не выдумываем велосипед там, где его давно изобрели, а обращаемся к специалистам 1С.
5. В редких случаях такая ошибка возникает в следствие экстренного отключения электроэнергии, аварийного завершения 1С. В этом случае необходимо почистить кэш и прибегнуть к тестированию базы 1С.
Автор статьи: Ирина Плотникова
Понравилась статья? Подпишитесь на рассылку новых материалов
Добавить комментарий
1
2
Показывать по
10
20
40
сообщений
Новая тема
Ответить
АленаКачаева
Дата регистрации: 19.01.2009
Сообщений: 48
Добрый день! При проведении авансового отчета программа пишет Деление на 0 и не проводит док-т.Однако при проведении той же самой операции в демо версии все в порядке.1С:Предприятие 8.1 (8.1.12.101)Бухгалтерия предприятия, редакция 1.6 (1.6.11.7). Подскажите, пожалуйста, в чем может быть причина? Спасибо
Vladko
активный пользователь
офлайн
Дата регистрации: 27.08.2007
Сообщений: 2648
это значит, что число в знаменателе у деления равно нулю. Это всё что можно сказать по данной информации.<br>А если напишите подробнее ошибку(всё что пишет комп), то можно и по-конкретнее сказать где смотреть
EAX88
Дата регистрации: 23.06.2008
Сообщений: 159
Советую в посике сообщений набрать «ошибка деления на ноль» совсем недавно эта тема очень-очень подробно разбиралась и были найдены решения! В итоге это ошибка 1С-ников, в следующем релизе, который уже не за горами, обещали поправить!!!
Prikum
активный пользователь
офлайн
Дата регистрации: 18.02.2002
Сообщений: 20926
Тут другая ошибка, тут авансовый отчет, а не декларации
АленаКачаева
Дата регистрации: 19.01.2009
Сообщений: 48
При проведении док-та так и пишет «Деление на 0». Подробно:Ошибка при выполнении обработчика — ‘{Документ.АвансовыйОтчет(856)}: Деление на 0′<br>по причине:<br>{Документ.АвансовыйОтчет(856)}: Деление на 0<br>Спасибо!
Денис (САМАРА)
Дата регистрации: 09.04.2008
Сообщений: 8351
Там происходит пересчет по курсу — либо курс валюты равен нулю, либо кратность валюты документа равна нулю.
АленаКачаева
Дата регистрации: 19.01.2009
Сообщений: 48
Спасибо огромное! Получилось!
Bezimyashka
Дата регистрации: 15.06.2010
Сообщений: 4
«При формировании отчета «Накопительная ведомость по расходу продуктов питания» выдает ошибку: Деление на 0.<br>Подробно:<br>{Отчет.НакопительнаяВедомостьПоРасходуПродуктовПитания0504038.МодульОбъекта(816)}: Деление на 0<br>Макет.Параметры.пЦена = Данные.Сумма / Данные.Количество;<br><br>Подскажите, что делать. Заранее спасибо»
Prikum
активный пользователь
офлайн
Дата регистрации: 18.02.2002
Сообщений: 20926
Конфигурация какая? Хотя судя по отчету, это бюджетка!?
Bezimyashka
Дата регистрации: 15.06.2010
Сообщений: 4
Бухгалтерия бюджетного учреждения, редакция 1.0 (1.0.15.5)
Читают тему:
Gray776
23.12.19
✎
08:58
Тут возник небольшой спор. Я утверждаю что такая ошибка выдается эской когда происходит деление на ноль. тем более в конфигураторе эска тычит в строку с дробью. Коллега не согласен он считает что таким образом обозначается более широкий спектр ошибок… Ну всё чего не может быть…
Джо-джо
23.12.19
✎
09:00
Огласите весь спектр пожалуйста
2S
23.12.19
✎
09:00
видимо коллега сто раз разработчик в других системах
Gray776
23.12.19
✎
09:01
(2) ага он в пример привел другие языки
Gray776
23.12.19
✎
09:01
(1) я не в курсе я тока знаю что деление на ноль это деление на ноль
Hillsnake
23.12.19
✎
09:01
(0) ошибка по делению на 0 возникает, когда в знаменателе 0. Искренне ваш КО.
2S
23.12.19
✎
09:03
(3) ну он по-своему прав
ДенисЧ
23.12.19
✎
09:05
Иногда деление на нуль — это просто деление на нуль.
А вот откуда взялся нуль там, где на него делят без проверки — это совсем другой вопрос…
2S
23.12.19
✎
09:07
+(6) Например, в постгри бывает всплывет ошибка с делением на ноль, но причина в другом.
famnam
23.12.19
✎
09:08
(3) а причем тут другие языки? разговор об 1С же
Gray776
23.12.19
✎
09:12
(9) ну по аналогии человек подумал… Я таки поразился и удивился подумал мож чего не знаю вот у тут спрашваю на всякий случай
dezss
23.12.19
✎
09:14
(8) это плохая обработка ошибок.
Gray776
23.12.19
✎
09:16
(11) Это как бы штатный 1С овский документик…
Ошибка тут:
{ОбщийМодуль.НалоговыйУчетУСН.Модуль(4147)}: Деление на 0
КоэффРасчетов = СуммаСписания / (Строка.Сумма + Строка.НДС);
Документ списание с расчетного счета по загруженной из банка выписке
Gray776
23.12.19
✎
09:19
Кстати во! мож кто сталкивался с таким багом? У меня только мысль возникла что в структура пустая строка как то попадает но блин как отловить…
Gray776
23.12.19
✎
09:21
Погашение задолженности галка стояла из-за нее …
Gray776
23.12.19
✎
09:24
Ну точнее там выбирается автоматически по документу или не погашать… кароч в этом глюк был… всем спасибо за внимание
Gray776
23.12.19
✎
09:26
косяк 1С однако … Стояло АВТОМАТИЧЕСКИ и не проводилось с НЕ ПОГАШАТЬ провелось.
(11) «(8) это плохая обработка ошибок.» (c)
Kigo_Kigo
23.12.19
✎
09:27
Да в 1С хватает «Плохая обработка ошибок», одна РЛС чего стоит
b_ru
23.12.19
✎
09:55
(16) Это у вас в головах косяк и в учете. Автоматическое погашение задолженности видит какой-то кривой остаток, которого там быть не должно. При «не погашать» платежка просто повиснет на аванс, а кривой остаток никуда не денется.
dmrjan
23.12.19
✎
10:03
(7) Обычно это документ с пустой строкой. Скажем плохо проработанный механизм обмена с Меркурием.
IVT_2009
23.12.19
✎
10:12
Как правило значение коэфицента в документе потеряно , он или неопределено или 0.
Должен быть >=1
IVT_2009
23.12.19
✎
10:12
Или в справочнике номенклатура та же бяка с коэфицентом.
Gray776
23.12.19
✎
13:36
(18) Указали конкретный документ провелось. «Кривой остаток» восстановление последовательности наверное выпрямит но это будет позже
Добрый день, дорогие читатели. На днях одна из фирм, которую я обслуживаю обратилась ко мне с проблемой.
При закрытии месяца в 1С появлялась ошибка: Деление на 0.
{Документ.ФормированиеЗаписейКнигиПокупок.МодульОбъекта(2466)}: Деление на 0
НДССтроки = Окр(СтрокаТаблицы.НДС * СуммаБезНДССтроки / СтрокаТаблицы.СуммаБезНДС, 2);
Первым делом, я залез на форум с спросил совета у программистов 1С. Мне сказали проверить кратность в Валютах. Она должна быть равна 1.
Для перехода в раздел Валюты переходим во вкладку Банк и выбираем вкладку Валюты. Проверяем везде кратность, она должна равняться 1. Загружаем курсы валют за период, который не закрывается.
Раздел Валюты должен выглядеть следующим образом:
После проверки своей базы я убедился, что с курсами валют и кратностью у меня полный порядок, но закрытие месяца так и не проводилось. (В большинстве случаев проблема деления на 0, заключается именно в кратности в курсах валют)
Я долго не мог разобраться в данной проблеме, перепровел все документы в книге покупок и продаж.
Лишь спустя несколько дней я нашел непроведенный документ без записей в разделе Операции — Регламентные документы 1С.
В регламентных документах НДС в конце списка я обнаружил непроведенный документ. Формирование книги покупок, в котором ничего не было записано, я его провел и какого было мое удивление, месяц закрылся, проблема решена.
На этом статья подошла к концу, надеюсь мне удалось кому-либо помочь решить данную проблему.