8.х Ошибка SQL: Деление на 0

Тема в разделе "Общие вопросы "1С:Предприятие 8"", создана пользователем SevenQ, 29 ноя 2016.

  1. TopicStarter Overlay
    SevenQ
    Offline

    SevenQ

    Регистрация:
    29 ноя 2016
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    Здравствуйте. Будьте добры помогите разобраться с ошибкой и устранить ее.
    При формировании отчета валовой прибыли по поставщикам выдает данную ошибку:

    Причем это только если выбран определенный месяц. Например с 1.08 по 31.08 все формируется, а вот с 1.09 по 30.09 уже выпадает эта ошибка. В коде есть всего 4 операции деления и все они построены правильно, или деления производится на фиксированное число или перед делением стоит операция добавления (+1) и деления на ноль вроде как нету. Прикрепил код для быстрого поиска операций деления отделил вот так " //деление ".

    В конфигруаторе ошибка указывает на проблему в этом рядке. Выделил рядок.

    Код:
    СвязанныеПоля = ДобавитьСвязанныеПоля();
            ПоляПорядка = ДобавитьПоляПорядка();
         
            ПостроительОтчета.Выполнить();
            ПостроительОтчета.Вывести(ТабличныйДокумент); //проблема
         
            УдалитьПоляПорядка(ПоляПорядка);
            УдалитьСвязанныеПоля(СвязанныеПоля);
            УдалитьОтборПериодичность(ОтборПериодичность);
    Будьте добры помогите разобраться с ошибкой и устранить ее.

    Вложения:

    • код.txt
      Размер файла:
      268,6 КБ
      Просмотров:
      1
  2. Draco
    Offline

    Draco Модераторы Команда форума Модератор

    Регистрация:
    28 окт 2009
    Сообщения:
    13.722
    Симпатии:
    959
    Баллы:
    204
    ДА вы для налача посмотрите таблица с данныеми котрыую Вам возвращает запрос и там посмотрите есть ноль или еще что. Проверьте те показатели которые при делении учавствуют
  3. TopicStarter Overlay
    SevenQ
    Offline

    SevenQ

    Регистрация:
    29 ноя 2016
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    Посмотрел вроде нулей нету.
    Код:
    // Процедура формирования отчета
    //
    Процедура СформироватьОтчет(ТабличныйДокумент) Экспорт
     
        // Перед формирование отчета можно установить необходимые параметры универсального отчета.
        Отказ = Ложь;
        УчетнаяПолитика = ОбщегоНазначения.ПолучитьПараметрыУчетнойПолитики(?(Не ЗначениеЗаполнено(УниверсальныйОтчет.ДатаКон), ТекущаяДата(), УниверсальныйОтчет.ДатаКон), Отказ);
         
        УниверсальныйОтчет.СформироватьОтчет(ТабличныйДокумент);
    
    КонецПроцедуры // СформироватьОтчет()
    
    Не знаю даже, при делении к знаменателю всегда добавляется +1 в скобках и логически на ноль уже не делится. Вот пример.
    Код:
    ШириныКолонок[ТекущаяКолонка - 1 + НомерКолонки] = ШиринаКолонки / (КоличествоКолонок + 1);

    Вложения:

    Последнее редактирование: 29 ноя 2016
  4. Draco
    Offline

    Draco Модераторы Команда форума Модератор

    Регистрация:
    28 окт 2009
    Сообщения:
    13.722
    Симпатии:
    959
    Баллы:
    204
    Ну мое мнение это в данных надо искать и смотреть так по коду ничего особого не скажешь
  5. TopicStarter Overlay
    SevenQ
    Offline

    SevenQ

    Регистрация:
    29 ноя 2016
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    То есть возможно где то данных стоит пустая клетка которая воспринимается за ноли или может быть просто ноль и оно не формирует из-за этого отчет?
  6. Draco
    Offline

    Draco Модераторы Команда форума Модератор

    Регистрация:
    28 окт 2009
    Сообщения:
    13.722
    Симпатии:
    959
    Баллы:
    204
    да. Либо какю то корректировку сделали или еще каких то данных для отчета нет, а вы его формируете .

Поделиться этой страницей