Меню

1с ошибка при выполнении операции над данными 22012 error division by zero

   Avtokrator

03.06.13 — 12:03

Доброго времени суток, уважаемые Мастера.

Проблема немного не понятная…. В УТ 10.3.12.3, при проведении документа  «Поступление товаров и услуг» возникает ошибка:

Ошибка при выполнении обработчика — ‘ОбработкаПроведения’

по причине:

{ОбщийМодуль.ОбщегоНазначения(4191)}: Ошибка при вызове метода контекста (Выполнить)

по причине:

Ошибка выполнения запроса

по причине:

Ошибка при выполнении операции над данными:

Microsoft SQL Server Native Client 10.0: Divide by zero error encountered.

HRESULT=80040E14, SQLSrvr: SQLSTATE=22012, state=1, Severity=10, native=8134, line=1

Знаю, что программа делит на «0», но вот где ??? Ошибка ссылается на следующую функцию.

Функция СформироватьЗапросПоТабличнойЧасти(ДокументОбъект, ИмяТабличнойЧасти, СтруктураПолей,

                                          СтруктураСложныхПолей = Неопределено) Экспорт

   ТекстЗапроса = «»;

   
   ДокументМетаданные = ДокументОбъект.Метаданные();

   Для Каждого Реквизит Из СтруктураПолей Цикл

       ТекстЗапроса  = ТекстЗапроса + «,

       |Док.» + Реквизит.Значение +

       » КАК » + СокрЛП(Реквизит.Ключ);

   КонецЦикла;

   
   ТекстСоединение=»»;

   
   Запрос = Новый Запрос;

   Если ТипЗнч(СтруктураСложныхПолей) = Тип(«Структура») Тогда // Добавим к запросу конструкции.

       
       Для Каждого Элемент Из СтруктураСложныхПолей Цикл

           
           ТекстЗапроса  = ТекстЗапроса + «,

           | » + Элемент.Значение +

           » КАК » + СокрЛП(Элемент.Ключ);

           
       КонецЦикла;

       
       Если СтруктураСложныхПолей.Свойство(«Проект») Тогда

           
           ТекстСоединение=»

           |ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.УстановкаПроектовДляНоменклатуры.СрезПоследних(&ДатаДок, НоменклатураПроекта В (ВЫБРАТЬ Номенклатура ИЗ Документ.» + ДокументМетаданные.Имя + «.»+ СокрЛП(ИмяТабличнойЧасти) + » ГДЕ Ссылка = &ДокументСсылка)) КАК ПроектыНоменклатуры

           |ПО Док.Номенклатура=ПроектыНоменклатуры.НоменклатураПроекта»;

           
           Запрос.УстановитьПараметр(«ДатаДок»,ДокументОбъект.Дата);

       КонецЕсли;

   КонецЕсли;

       
   Запрос.Текст = «ВЫБРАТЬ

               | Док.НомерСтроки » + ТекстЗапроса + »

               | ИЗ

               |      Документ.» + ДокументМетаданные.Имя + «.»+ СокрЛП(ИмяТабличнойЧасти) +

               » КАК Док»+ТекстСоединение+»

               |     ГДЕ Док.Ссылка = &ДокументСсылка»;

   // Установим параметры запроса.

   Запрос.УстановитьПараметр(«ДокументСсылка» , ДокументОбъект.Ссылка);

   
   Если ДокументОбъект[ИмяТабличнойЧасти].Количество() = 0 Тогда

       Запрос.Текст = СтрЗаменить(Запрос.Текст, «ГДЕ Док.Ссылка = &ДокументСсылка», «ГДЕ ЛОЖЬ»);

   КонецЕсли;

   Возврат Запрос.Выполнить();

КонецФункции // СформироватьЗапросПоТабличнойЧасти()

   Avtokrator

4 — 03.06.13 — 12:13

Проблема кроется тут, когда создается сам запрос:

"
Для Каждого Реквизит Из СтруктураПолей Цикл

        ТекстЗапроса  = ТекстЗапроса + ",
        |Док." + Реквизит.Значение + 
        " КАК " + СокрЛП(Реквизит.Ключ);

    КонецЦикла;
"
 

Как, в таком запросе, сделать проверку на ноль, чтобы SQL отвязался?

   Avtokrator

6 — 03.06.13 — 12:18

Текст запроса, вытащенный из обработчика.

Запрос.Текст    "ВЫБРАТЬ 
 Док.НомерСтроки ,
Док.Номенклатура КАК Номенклатура,
Док.Количество * Коэффициент /Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК Количество,
Док.Сумма КАК Сумма,
Док.СтавкаНДС КАК СтавкаНДС,
Док.СуммаНДС КАК НДС,
Док.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
Док.СерияНоменклатуры КАК СерияНоменклатуры,
Док.Номенклатура.ВестиПартионныйУчетПоСериям КАК ВестиПартионныйУчетПоСериям,
Док.Номенклатура.Услуга КАК Услуга,
Док.Номенклатура.Набор КАК Набор,
Док.Номенклатура.Комплект КАК Комплект,
Док.Заказ КАК Заказ,
Док.Заказ.СкладГруппа КАК СкладЗаказаПокупателя,
Док.Заказ.ДоговорКонтрагента.ОбособленныйУчетТоваровПоЗаказамПокупателей КАК ОбособленныйУчетТоваровПоЗаказамПокупателей,
Док.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
Док.Ссылка.СкладОрдер КАК Склад,
Док.Ссылка.СкладОрдер.ВидСклада КАК ВидСкладаРазмещения,
Док.ПриходныйОрдер КАК ДокументПолучения,
Док.ПриходныйОрдер.Организация КАК ОрганизацияДокументаПолучения,
Док.ПриходныйОрдер.БезПраваПродажи КАК БезПраваПродажи,
Док.Цена КАК Цена,
Док.Коэффициент КАК Коэффициент,
Док.ПриходныйОрдер.Склад КАК ПриходныйОрдерСклад,
Док.Номенклатура.ВестиУчетПоСериям КАК УчетПоСериям,
Док.СерияНоменклатуры.СтранаПроисхождения КАК СтранаПроисхождения,
Док.СерияНоменклатуры.НомерГТД КАК НомерГТД,
Док.ЗаказПоставщику КАК ЗаказПоставщику
 ИЗ 
      Документ.ПоступлениеТоваровУслуг.Товары КАК Док 
     ГДЕ Док.Ссылка = &ДокументСсылка"

Показывать по
10
20
40
сообщений

Новая тема

Ответить

Марат

Дата регистрации: 28.01.2019
Сообщений: 6

Здравствуйте, помогите пожалуйста с ошибкой. Пытаюсь сформировать : Отчеты — Анализ учета по НДС

{ОбщийМодуль.ДлительныеОперации.Модуль(376)}: Ошибка при выполнении операции над данными:
Microsoft SQL Server Native Client 11.0: Обнаружена ошибка: деление на ноль.
HRESULT=80040E14, SQLSrvr: SQLSTATE=22012, state=1, Severity=10, native=8134, line=1

            ВызватьИсключение(ТекстОшибки);

Произошло после перехода из 8.3.10(ошибки не было) на 8.3.13.
Версия 1с серверная. Документов сотни тысяч, просматривать руками каждый — не вариант.

Тестово перевел из серверной в файловую базу — на удивление все заработало БЕЗ Ошибок.

Vladko

Дата регистрации: 27.08.2007
Сообщений: 2643

Марат,посмотрите как на последней 8.3.12 работает. Здесь ясно, что это — глюк платформы. Если ошибка повторится, то напишите на горячую линию 1С сообщение об ошибке.

Марат

Дата регистрации: 28.01.2019
Сообщений: 6

Я писал. Мне говорят проверить все документы (а их огромное количество с незапамятных времен).

Вот ответ от v8 V8@1c.ru

При формировании отчета «Анализ учета по НДС» выдается сообщение об ошибке «Обнаружена ошибка: деление на ноль» если в информационной базе присутствуют документы следующих видов: -Поступление на расчетный счет, -Списание с расчетного счета, -Операция по платежной карте -Поступление наличных со значением кратности взаиморасчетов равной нулю.

Отчет не формируется даже за сегодняшнюю дату, при условии что ни одного действия с документами не было произведено.
На 8.3.12 не могу проверить, так как нет этой платформы. я обновлялся с 8.3.10 напрямую до 8.3.13.Но суть в том, что в 8.3.10 все работало.

Марат

Дата регистрации: 28.01.2019
Сообщений: 6

Ошибку исправил. Сделал универсальный отчет, установил на все документы условие: Кратность = 0.
Поправил все документы — Внимание, учитываются даже НЕ проведенные документы.

Vladko

Дата регистрации: 27.08.2007
Сообщений: 2643

Марат,в универсальном отчете можно тоже добавить в отбор условие на проведённость документа

Марат

Дата регистрации: 28.01.2019
Сообщений: 6

Vladko, Спасибо, буду знать. Дальше копать в отчете не стал, проблема нашлась и решилась.

EvJ2019

Дата регистрации: 13.03.2019
Сообщений: 1

Марат пишет:

Цитата

              Ошибку исправил. Сделал универсальный отчет, установил на все документы условие: Кратность = 0. Поправил все документы — Внимание, учитываются даже НЕ проведенные документы.

Добрый день. А какие документы вы поправляли, скажите, пожалуйста?
Такая же ошибка. Но в документах Поступление на расчетный счет, Списание с расчетного счета, Операция по платежной карте, Поступление наличных нет реквизита Кратность взаиморасчетов.

Valentin46

Дата регистрации: 10.02.2011
Сообщений: 1041

Марат пишет:

Цитата
На 8.3.12 не могу проверить, так как нет этой платформы. я обновлялся с 8.3.10 напрямую до 8.3.13.

А это как понимать, нельзя ли пояснить?

Показывать по
10
20
40
сообщений

Divide by zero error encountered. 1С УТ

Доброго времени суток, уважаемые Мастера.
Проблема немного не понятная. В УТ 10.3.12.3, при проведении документа «Поступление товаров и услуг» возникает ошибка:
Ошибка при выполнении обработчика — ‘ОбработкаПроведения’
по причине:
<ОбщийМодуль.ОбщегоНазначения(4191)>: Ошибка при вызове метода контекста (Выполнить)

по причине:
Ошибка выполнения запроса
по причине:
Ошибка при выполнении операции над данными:
Microsoft SQL Server Native Client 10.0: Divide by zero error encountered.
HRESULT=80040E14, SQLSrvr: SQLSTATE=22012, state=1, Severity=10, native=8134, line=1

Знаю, что программа делит на «0», но вот где . Ошибка ссылается на следующую функцию.

Функция СформироватьЗапросПоТабличнойЧасти(ДокументОбъект, ИмяТабличнойЧасти, СтруктураПолей,
СтруктураСложныхПолей = Неопределено) Экспорт

Для Каждого Реквизит Из СтруктураПолей Цикл

ТекстЗапроса = ТекстЗапроса + «,
|Док.» + Реквизит.Значение +
» КАК » + СокрЛП(Реквизит.Ключ);

Запрос = Новый Запрос;

Если ТипЗнч(СтруктураСложныхПолей) = Тип(«Структура») Тогда // Добавим к запросу конструкции.

Для Каждого Элемент Из СтруктураСложныхПолей Цикл

ТекстЗапроса = ТекстЗапроса + «,
| » + Элемент.Значение +
» КАК » + СокрЛП(Элемент.Ключ);

Если СтруктураСложныхПолей.Свойство(«Проект») Тогда

Запрос.УстановитьПараметр(«ДатаДок»,ДокументОбъект.Дата);
КонецЕсли;
КонецЕсли;

Запрос.Текст = «ВЫБРАТЬ
| Док.НомерСтроки » + ТекстЗапроса + »
| ИЗ
| Документ.» + ДокументМетаданные.Имя + «.»+ СокрЛП(ИмяТабличнойЧасти) +
» КАК Док»+ТекстСоединение+»
| ГДЕ Док.Ссылка = &ДокументСсылка»;

// Установим параметры запроса.
Запрос.УстановитьПараметр(«ДокументСсылка» , ДокументОбъект.Ссылка);

Если ДокументОбъект[ИмяТабличнойЧасти].Количество() = 0 Тогда
Запрос.Текст = СтрЗаменить(Запрос.Текст, «ГДЕ Док.Ссылка = &ДокументСсылка», «ГДЕ ЛОЖЬ»);
КонецЕсли;

Источник

Ошибка при выполнении операции над данными 22012 error division by zero

Есть конфигурация ЗиК непосредственно правкой конфы занимается другой человек, я только админю SQL сервер. После внесения очередных изменений в конфу при закрытии месяца SQL сервер матерится: «Microsoft OLE DB Provider for SQL Server: Divide by zero error encountered.», при этом если база лежит в dbf месяц закрывается без проблем! Разработчик конфы все валит на меня, я в свою очередь уверен что со стороны сервера все ок! Считаю что разработчик заранее не предусмотрел деление на 0 что-то типо

«ВЫБОР КОГДА ЕСТЬNULL(Таблица.Количество,0) = 0 ТОГДА 0
ИНАЧЕ Таблица.Сумма/Таблица.Количество
КОНЕЦ КАК Цена»

Помогите разрешить спор!
Как доказать главбуху что проблема вызвана именно ошибкой в конфигурации?
Есть ли внутри 1с платформы проверка арифметических операций, может ее там нет, поэтому dbf вариант работает без проблем?

Бухия 8.1 1.6(1.6.11.7), скульная.
При проведении некоторых доков выскакивает ошибка:
: Ошибка при вызове метода контекста (Выполнить): Ошибка выполнения запроса «Ошибка при выполнении операции над данными:
Microsoft OLE DB Provider for SQL Server: Divide by zero error encountered.
HRESULT=80040E14, SQLSrvr: Error state=1, Severity=10, native=8134, line=1

Может кто-нибудь сталкивался? Заранее спасибо.

деление на ноль.. запрос нужно смотреть

В запросе нашел:
КОНЕЦ * ТаблицаПлатежей.КурсВзаиморасчетов / ТаблицаПлатежей.КратностьВзаиморасчетов

Блин, только что попробовал провести, теперь пишет:

Ошибка при выполнении обработчика — ‘: Ошибка при вызове метода контекста (Выполнить): Ошибка выполнения запроса «Конфликт блокировок при выполнении транзакции:
Microsoft OLE DB Provider for SQL Server: Lock request time out period exceeded.
HRESULT=80040E31, SQLSrvr: Error state=38, Severity=10, native=1222, line=1
«‘
по причине:
: Ошибка при вызове метода контекста (Выполнить): Ошибка выполнения запроса «Конфликт блокировок при выполнении транзакции:
Microsoft OLE DB Provider for SQL Server: Lock request time out period exceeded.
HRESULT=80040E31, SQLSrvr: Error state=38, Severity=10, native=1222, line=1
«

по причине:
Ошибка выполнения запроса «Конфликт блокировок при выполнении транзакции:
Microsoft OLE DB Provider for SQL Server: Lock request time out period exceeded.
HRESULT=80040E31, SQLSrvr: Error state=38, Severity=10, native=1222, line=1
»
по причине:
Конфликт блокировок при выполнении транзакции:
Microsoft OLE DB Provider for SQL Server: Lock request time out period exceeded.
HRESULT=80040E31, SQLSrvr: Error state=38, Severity=10, native=1222, line=1

«Возврат Запрос.Выполнить;» — ставь точку останова и смотри какие вычислительные операции у тебя в запросе.

Проблема кроется тут, когда создается сам запрос: » Для Каждого Реквизит Из СтруктураПолей Цикл » Как, в таком запросе, сделать проверку на ноль, чтобы SQL отвязался?

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

Текст запроса, вытащенный из обработчика. Запрос.Текст «ВЫБРАТЬ Док.НомерСтроки , Док.Номенклатура КАК Номенклатура, Док.Количество * Коэффициент /Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК Количество, Док.Сумма КАК Сумма, Док.СтавкаНДС КАК СтавкаНДС, Док.СуммаНДС КАК НДС, Док.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры, Док.СерияНоменклатуры КАК СерияНоменклатуры, Док.Номенклатура.ВестиПартионныйУчетПоСериям КАК ВестиПартионныйУчетПоСериям, Док.Номенклатура.Услуга КАК Услуга, Док.Номенклатура.Набор КАК Набор, Док.Номенклатура.Комплект КАК Комплект, Док.Заказ КАК Заказ, Док.Заказ.СкладГруппа КАК СкладЗаказаПокупателя, Док.Заказ.ДоговорКонтрагента.ОбособленныйУчетТоваровПоЗаказамПокупателей КАК ОбособленныйУчетТоваровПоЗаказамПокупателей, Док.ЕдиницаИзмерения КАК ЕдиницаИзмерения, Док.Ссылка.СкладОрдер КАК Склад, Док.Ссылка.СкладОрдер.ВидСклада КАК ВидСкладаРазмещения, Док.ПриходныйОрдер КАК ДокументПолучения, Док.ПриходныйОрдер.Организация КАК ОрганизацияДокументаПолучения, Док.ПриходныйОрдер.БезПраваПродажи КАК БезПраваПродажи, Док.Цена КАК Цена, Док.Коэффициент КАК Коэффициент, Док.ПриходныйОрдер.Склад КАК ПриходныйОрдерСклад, Док.Номенклатура.ВестиУчетПоСериям КАК УчетПоСериям, Док.СерияНоменклатуры.СтранаПроисхождения КАК СтранаПроисхождения, Док.СерияНоменклатуры.НомерГТД КАК НомерГТД, Док.ЗаказПоставщику КАК ЗаказПоставщику ИЗ

Смотри где у тебя по тексту / и оборачивай делитель в Выбор когда Делитель=0 Тогдв Делимое/1 Иначе Делимое/Делитель Колнец

вот тут имхо собака порылась Док.Количество * Коэффициент /Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК Количество,

Ну нет..Мало ли почему там коэффициент=0. Я бы не стал

Что посоветуете дописать . Как лучше всего обернуть?

Выбор Конда Номенклатура.ЕдиницаХраненияОстатков.Коэффициент =0 Тогда КАК КАК Количество

а я бы стал. на каком основании цифиль должна быть без учета коэффициента? так и получаются 2000 м куб

На том например что забыли поставить. И что теперь обнулять количество?

Беру свои слова обратно в карточке товара не были проставлены коэффиценты.

: Ошибка при выполнении операции над данными:
Microsoft SQL Server Native Client 11.0: Обнаружена ошибка: деление на ноль.
HRESULT=80040E14, SQLSrvr: SQLSTATE=22012, state=1, Severity=10, native=8134, line=1

Произошло после перехода из 8.3.10(ошибки не было) на 8.3.13.
Версия 1с серверная. Документов сотни тысяч, просматривать руками каждый — не вариант.

Тестово перевел из серверной в файловую базу — на удивление все заработало БЕЗ Ошибок.

Я писал. Мне говорят проверить все документы (а их огромное количество с незапамятных времен).

Отчет не формируется даже за сегодняшнюю дату, при условии что ни одного действия с документами не было произведено.
На 8.3.12 не могу проверить, так как нет этой платформы. я обновлялся с 8.3.10 напрямую до 8.3.13.Но суть в том, что в 8.3.10 все работало.

Источник

Ошибка Обнаружена Ошибка, деление на ноль

Здравствуйте, помогите пожалуйста с ошибкой. Пытаюсь сформировать : Отчеты — Анализ учета по НДС

<ОбщийМодуль.ДлительныеОперации.Модуль(376)>: Ошибка при выполнении операции над данными:
Microsoft SQL Server Native Client 11.0: Обнаружена ошибка: деление на ноль.
HRESULT=80040E14, SQLSrvr: SQLSTATE=22012, state=1, Severity=10, native=8134, line=1

Произошло после перехода из 8.3.10(ошибки не было) на 8.3.13.
Версия 1с серверная. Документов сотни тысяч, просматривать руками каждый — не вариант.

Тестово перевел из серверной в файловую базу — на удивление все заработало БЕЗ Ошибок.

Марат ,посмотрите как на последней 8.3.12 работает. Здесь ясно, что это — глюк платформы. Если ошибка повторится, то напишите на горячую линию 1С сообщение об ошибке.

Я писал. Мне говорят проверить все документы (а их огромное количество с незапамятных времен).

Вот ответ от v8 V8@1c.ru

При формировании отчета «Анализ учета по НДС» выдается сообщение об ошибке «Обнаружена ошибка: деление на ноль» если в информационной базе присутствуют документы следующих видов: -Поступление на расчетный счет, -Списание с расчетного счета, -Операция по платежной карте -Поступление наличных со значением кратности взаиморасчетов равной нулю.

Отчет не формируется даже за сегодняшнюю дату, при условии что ни одного действия с документами не было произведено.
На 8.3.12 не могу проверить, так как нет этой платформы. я обновлялся с 8.3.10 напрямую до 8.3.13.Но суть в том, что в 8.3.10 все работало.

Источник

Что за ошибка??

Бухия 8.1 1.6(1.6.11.7), скульная.
При проведении некоторых доков выскакивает ошибка:
<ОбщийМодуль.УправлениеДенежнымиСредствами(335)>: Ошибка при вызове метода контекста (Выполнить): Ошибка выполнения запроса «Ошибка при выполнении операции над данными:
Microsoft OLE DB Provider for SQL Server: Divide by zero error encountered.
HRESULT=80040E14, SQLSrvr: Error state=1, Severity=10, native=8134, line=1

Может кто-нибудь сталкивался? Заранее спасибо.

деление на ноль.. запрос нужно смотреть

В запросе нашел:
КОНЕЦ * ТаблицаПлатежей.КурсВзаиморасчетов / ТаблицаПлатежей.КратностьВзаиморасчетов

Блин, только что попробовал провести, теперь пишет:

Ошибка при выполнении обработчика — ‘<ОбщийМодуль.ПолныеПрава(349)>: Ошибка при вызове метода контекста (Выполнить): Ошибка выполнения запроса «Конфликт блокировок при выполнении транзакции:
Microsoft OLE DB Provider for SQL Server: Lock request time out period exceeded.
HRESULT=80040E31, SQLSrvr: Error state=38, Severity=10, native=1222, line=1
«‘
по причине:
<ОбщийМодуль.ПолныеПрава(349)>: Ошибка при вызове метода контекста (Выполнить): Ошибка выполнения запроса «Конфликт блокировок при выполнении транзакции:
Microsoft OLE DB Provider for SQL Server: Lock request time out period exceeded.
HRESULT=80040E31, SQLSrvr: Error state=38, Severity=10, native=1222, line=1
«

по причине:
Ошибка выполнения запроса «Конфликт блокировок при выполнении транзакции:
Microsoft OLE DB Provider for SQL Server: Lock request time out period exceeded.
HRESULT=80040E31, SQLSrvr: Error state=38, Severity=10, native=1222, line=1
»
по причине:
Конфликт блокировок при выполнении транзакции:
Microsoft OLE DB Provider for SQL Server: Lock request time out period exceeded.
HRESULT=80040E31, SQLSrvr: Error state=38, Severity=10, native=1222, line=1

Источник

Ваш браузер устарел, пожалуйста обновите ваш браузер пройдя по ссылке www.microsoft.com/download

Валовая прибыль по оплате (для УТ 10.3)

Отчет «Валовая прибыль по оплате» (для УТ 10.3)

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

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

Можно увидеть отгрузки, по которым не поступила еще полная оплата.

Структура отчета

Порядок полей в отчете следующий:

  1. Менеджер
  2. Вид оплаты
  3. Контрагент
  4. Реализация товаров и услуг
  5. Платежное поручение входящее
  6. Номенклатура

Особенности отчета «Валовая прибыль по оплате»

1. Код отчета открыт, отчет реализован на СКД по готовому шаблону (с удобными кнопками настроек).

2. Период отчета нужно заполнять обязательно.

3. Отчет работает на типовой конфигурации УТ 10.3.32. Также тестировался на некоторых старых релизах УТ 10.3. Так как используются только регистры, то доработки УТ 10.3 как правило не рушат этот отчет — он продолжает работать даже на нетиповых конфигурациях и даже на старых релизах.

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

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

Источник

Ошибка при проведении

Автор Poltev86, 10 ноя 2014, 12:10

0 Пользователей и 1 гость просматривают эту тему.

1С:Предприятие 8.2 (8.2.18.61) Управление производственным предприятием, редакция 1.3 (1.3.51.3) Всем добрый день! Подскажите пожалуйста.как с этим бороться?!

Ошибка при создании Отчет производства за смену:  Ошибка при вызове метода контекста (Записать): Ошибка при выполнении обработчика — ‘ОбработкаПроведения’: {ОбщийМодуль.УправлениеПроизводствомДвиженияПоРегистрам.Модуль(3672)}: Ошибка при вызове метода контекста (Выполнить): Ошибка выполнения запроса: Ошибка при выполнении операции над данными:
Microsoft SQL Server Native Client 10.0: Обнаружена ошибка: деление на ноль.
HRESULT=80004005, SQLSrvr: SQLSTATE=22012, state=1, Severity=10, native=8134, line=1


Посмотрите где там в запросе операции деления и поставьте нужные проверки.



В запросе операции деления не где не вижу(( Документ с самого начала провелся..и еще несколько раз его редактировали..а сейчас вот такая с ним беда!


Распределение материалов производится вручную или автоматически? Т.е. закладка Распределение материалов как заполняется: скрыта или сами заполняете и корректируете?


Распределение происходит автоматически


А что именно корректировалось после последнего удачного проведения?


Количество выпущенной продукции


Проверьте все аналитики на всякий случай.
Я бы попробовал на свежем бэкапе тупо выбрасывать по очереди строки методом исключения.


Спасибо за советы! Разобрался сам! Была ошибка в коде, врятли кому то поможет так как отчет этот переделывал прошлый программист :^454^:


Теги:

  • Форум 1С

  • Форум 1С — ПРЕДПРИЯТИЕ 8.0 8.1 8.2 8.3 8.4

  • Конфигурирование, программирование в 1С Предприятие 8

  • Ошибка при проведении

Похожие темы (5)

Рейтинг@Mail.ru

Rambler's Top100

Поиск

I am getting this error: ERROR: division by zero. SQL state: 22012

Below is my query —

UPDATE USR
SET    PRCNT_SATSFCTN = (SELECT (SELECT COUNT(*) 
             FROM   ORDR 
             WHERE  USR.USR_ID = ORDR.USR_ID AND 
                    STSFD_SW = 'Y') * 100 / COUNT(*) 
                 FROM   ORDR
                     WHERE  USR.USR_ID = ORDR.USR_ID)

asked Jan 8, 2012 at 9:49

user558122's user avatar

You could try:

UPDATE usr
SET    prcnt_satsfctn = o.share
FROM  (
    SELECT usr_id
         ,(count(CASE WHEN stsfd_sw = 'Y' THEN 1 ELSE NULL END) * 100)
         / count(*) AS share   -- cannot be NULL!
    FROM   ordr
    GROUP  BY 1
    ) o
WHERE  usr.usr_id = o.usr_id

This query should be an improvment in several ways:

  • Does not update any row in usr, where there is no matching row in ordr. That’s where the division by 0 happens. (@Jan’s query would update with NULL instead.)

  • Division by 0 cannot happen here.

  • Faster because it only needs to scan the table ordr once.

  • Shorter, cleaner.

answered Jan 8, 2012 at 14:56

Erwin Brandstetter's user avatar

Erwin BrandstetterErwin Brandstetter

577k139 gold badges1034 silver badges1188 bronze badges

0

As the error states. The calculation will fail if your ORDR Count(*) is zero. Maybe add an additional check ensure that the right side of your divide will never be zero.

UPDATE USR SET    PRCNT_SATSFCTN = (SELECT (SELECT COUNT(*) 
              FROM   ORDR 
              WHERE  USR.USR_ID = ORDR.USR_ID AND 
                     STSFD_SW = 'Y') * 100 / COUNT(*) 
                  FROM   ORDR
                      WHERE  USR.USR_ID = ORDR.USR_ID 
                      HAVING COUNT(*) > 0)

answered Jan 8, 2012 at 9:54

Jan de Jager's user avatar

Jan de JagerJan de Jager

8602 gold badges13 silver badges35 bronze badges

2

w1ld32

1 / 1 / 0

Регистрация: 06.10.2015

Сообщений: 81

1

1C 8.x

Ошибка формирования стандартного отчета

04.12.2019, 13:03. Показов 4373. Ответов 10

Метки отчет, продажи (Все метки)


УТ 10.3 Толстый клиент.
Доброго. Помогите разобраться, сломал всю голову. Стандартный отчет «Продажи» отбор по менеджеру не работает с некоторыми менеджерами. Ошибка

1C
1
2
3
4
5
6
7
8
{Отчет.УниверсальныйОтчет.МодульОбъекта(86)}: Ошибка при вызове метода контекста (Вывести)
        ПостроительОтчета.Вывести(ТабличныйДокумент);
по причине:
Ошибка выполнения запроса
по причине:
Ошибка при выполнении операции над данными:
Microsoft SQL Server Native Client 11.0: Обнаружена ошибка: деление на ноль.
HRESULT=80004005, SQLSrvr: SQLSTATE=22012, state=1, Severity=10, native=8134, line=1

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

Ошибка формирования стандартного отчета

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь



0



14 / 13 / 1

Регистрация: 03.12.2019

Сообщений: 52

04.12.2019, 15:37

2

Если через конфу пока не анализировать, то можно действовать методом исключения. Для того, чтобы понять в чем дело:

1. Убери вообще из отбора периодичность итогов;
2. В другом периоде не совпадающим с этим тоже ошибка вылазит?
3. Попробуй убрать Показатели.

Если не поможет, то можно через конфу в режиме отладки посмотреть какие данные передаются.

Конфа типовая? Доработки были?



1



1 / 1 / 0

Регистрация: 06.10.2015

Сообщений: 81

04.12.2019, 16:39

 [ТС]

3

Aleksei2020, Переодичность итогов добавляется сама после ошибки, если делаю отчет по другому пользователю, и нет ошибки то она не появляется, период вообще мне не нужен в отборе, у меня период стоит в самом отчете. Также добавляются автоматически «дополнительный поля» (скрин

Ошибка формирования стандартного отчета

). Конфа типовая, доработки были, но этих отчетов не касались. Смущает именно то, что только по некоторым пользователям отчет не работает.



0



w1ld32

1 / 1 / 0

Регистрация: 06.10.2015

Сообщений: 81

04.12.2019, 16:45

 [ТС]

4

P.s. Еще смущает меня, что это, судя по всему, происходит при выводе отчета

1C
1
Ошибка при вызове метода контекста (Вывести)

, а не вычислениях. Вроде как при выводе он считает только ширину столбцов, но там посмотрел, деление на 0 не получается)



0



Эксперт 1С

841 / 604 / 211

Регистрация: 24.07.2013

Сообщений: 2,101

04.12.2019, 21:58

5

Ошибка возникает при выполнении запроса для получения нужных отчету данных.
Проанализируйте текст запроса, и где используется операция деления.
Возможно, для этих пользователей нет каких данных (или они нулевые).



1



14 / 13 / 1

Регистрация: 03.12.2019

Сообщений: 52

05.12.2019, 08:34

6

Цитата
Сообщение от w1ld32
Посмотреть сообщение

Еще смущает меня, что это, судя по всему, происходит при выводе отчета

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



1



1 / 1 / 0

Регистрация: 06.10.2015

Сообщений: 81

05.12.2019, 11:00

 [ТС]

7

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

Ошибка формирования стандартного отчета

При чем если убрать отражать в товарном учете то все работает хорошо.



0



14 / 13 / 1

Регистрация: 03.12.2019

Сообщений: 52

05.12.2019, 12:06

8

При убранных Показателях из отчета ошибка остается?



0



1 / 1 / 0

Регистрация: 06.10.2015

Сообщений: 81

05.12.2019, 13:30

 [ТС]

9

Aleksei2020, Да ошибка остается, стоит только в документе Корректировки, в этой строке кол-во изменить на другое число все снова работает.



0



Эксперт 1С

841 / 604 / 211

Регистрация: 24.07.2013

Сообщений: 2,101

05.12.2019, 20:04

10

w1ld32, Выполняемый запрос не смотрел?



0



1 / 1 / 0

Регистрация: 06.10.2015

Сообщений: 81

06.12.2019, 09:36

 [ТС]

11

Tklwegsd, нет, прошел по отладке от нажатия кнопки до ошибки, запроса не нашел, установил точку останова на ошибках, результат

Ошибка формирования стандартного отчета



0



0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • 1с ошибка при вызове метода контекста прочитатьxml ошибка преобразования данных xml
  • 1с ошибка при вызове метода контекста прочитать ошибка при выполнении файловой операции