|
Ошибка арифметического переполнения при преобразовании numeric к типу данных num | ☑ | ||
---|---|---|---|---|
0
PRO100 NigGaZ
11.07.14
✎
21:31
|
Открываю я документ УстановкаЦенНоменклатуры и вываливается еррор при выполнении запроса (запрос типовой) платформа 8.3.5.1068 (тестирую новую платформу), УТ 11.1.7.36 (тестирую УТ)
Ошибка при выполнении операции над данными: Microsoft SQL Server Native Client 11.0: Ошибка арифметического переполнения при преобразовании numeric к типу данных numeric. HRESULT=80040E57, SQLSrvr: SQLSTATE=22003, state=8, Severity=10, native=8115, line=1 Запрос = Новый Запрос(" |ВЫБРАТЬ | ВременнаяТаблицаТовары.Индекс КАК Индекс, | ВременнаяТаблицаТовары.Номенклатура КАК Номенклатура, | ВременнаяТаблицаТовары.Характеристика КАК Характеристика, | ВременнаяТаблицаТовары.ВидЦены КАК ВидЦены, | ВременнаяТаблицаТовары.Цена КАК Цена, | ВременнаяТаблицаТовары.Упаковка КАК Упаковка, | ВременнаяТаблицаТовары.ЦенаИзмененаВручную КАК ЦенаИзмененаВручную |ПОМЕСТИТЬ | ВременнаяТаблицаТовары |ИЗ | &Товары КАК ВременнаяТаблицаТовары |ИНДЕКСИРОВАТЬ ПО Номенклатура, Характеристика, ВидЦены |; |ВЫБРАТЬ | ВременнаяТаблицаТовары.Индекс КАК Индекс, | ВременнаяТаблицаТовары.Номенклатура КАК Номенклатура, | ВременнаяТаблицаТовары.Номенклатура.Артикул КАК Артикул, | ВременнаяТаблицаТовары.Характеристика КАК Характеристика, | ВременнаяТаблицаТовары.Номенклатура.ЕдиницаИзмерения КАК ЕдиницаИзмерения, | ВременнаяТаблицаТовары.Номенклатура.ЦеноваяГруппа КАК ЦеноваяГруппа, | | ВЫБОР | КОГДА ВременнаяТаблицаТовары.Номенклатура.ИспользованиеХарактеристик = ЗНАЧЕНИЕ(Перечисление.ВариантыИспользованияХарактеристикНоменклатуры.ОбщиеДляВидаНоменклатуры) ТОГДА Истина | КОГДА ВременнаяТаблицаТовары.Номенклатура.ИспользованиеХарактеристик = ЗНАЧЕНИЕ(Перечисление.ВариантыИспользованияХарактеристикНоменклатуры.ИндивидуальныеДляНоменклатуры) ТОГДА Истина | ИНАЧЕ Ложь КОНЕЦ КАК ХарактеристикиИспользуются, | | ВременнаяТаблицаТовары.ВидЦены КАК ВидЦены, | ВременнаяТаблицаТовары.Цена КАК Цена, | ВременнаяТаблицаТовары.ЦенаИзмененаВручную КАК ЦенаИзмененаВручную, | | ВЫБОР КОГДА ЦеныНоменклатуры.Упаковка = ВременнаяТаблицаТовары.Упаковка ТОГДА | ЦеныНоменклатуры.Цена | ИНАЧЕ | ЦеныНоменклатуры.Цена/ЕСТЬNULL(ЦеныНоменклатуры.Упаковка.Коэффициент,1)*ЕСТЬNULL(ВременнаяТаблицаТовары.Упаковка.Коэффициент,1) | КОНЕЦ КАК ДействующаяЦена, | | ВЫРАЗИТЬ(ВЫБОР КОГДА ЦеныНоменклатуры.Цена <> 0 Тогда 100*(ВременнаяТаблицаТовары.Цена - ВЫБОР КОГДА ЦеныНоменклатуры.Упаковка = ВременнаяТаблицаТовары.Упаковка ТОГДА | ЦеныНоменклатуры.Цена | ИНАЧЕ | ЦеныНоменклатуры.Цена/ЕСТЬNULL(ЦеныНоменклатуры.Упаковка.Коэффициент,1)*ЕСТЬNULL(ВременнаяТаблицаТовары.Упаковка.Коэффициент,1) | КОНЕЦ)/ | | ВЫБОР КОГДА ЦеныНоменклатуры.Упаковка = ВременнаяТаблицаТовары.Упаковка ТОГДА | ЦеныНоменклатуры.Цена | ИНАЧЕ | ЦеныНоменклатуры.Цена/ЕСТЬNULL(ЦеныНоменклатуры.Упаковка.Коэффициент,1)*ЕСТЬNULL(ВременнаяТаблицаТовары.Упаковка.Коэффициент,1) | КОНЕЦ ИНАЧЕ 0.00 КОНЕЦ КАК Число(10,2)) КАК Процент, | | ВременнаяТаблицаТовары.Упаковка КАК Упаковка |ИЗ | ВременнаяТаблицаТовары КАК ВременнаяТаблицаТовары | | ЛЕВОЕ СОЕДИНЕНИЕ | РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&Дата, (Номенклатура, Характеристика) В (Выбрать Номенклатура, Характеристика Из ВременнаяТаблицаТовары)) КАК ЦеныНоменклатуры | ПО ЦеныНоменклатуры.Номенклатура = ВременнаяТаблицаТовары.Номенклатура | И ЦеныНоменклатуры.Характеристика = ВременнаяТаблицаТовары.Характеристика | И ЦеныНоменклатуры.ВидЦены = ВременнаяТаблицаТовары.ВидЦены | |УПОРЯДОЧИТЬ ПО | Индекс | |ИТОГИ | МИНИМУМ(ЕдиницаИзмерения) КАК ЕдиницаИзмерения |ПО | Номенклатура, | Характеристика |"); залипает запрос скорее всего при умножении на 100 максимальная цена в документе 116 439,68 что делать с подобным? и самое главное, документ с такой ценой есть ранее и он открывается |
|||
1
Coldboy
11.07.14
✎
21:46
|
| ИНАЧЕ
| ЦеныНоменклатуры.Цена/ЕСТЬNULL(ЦеныНоменклатуры.Упаковка.Коэффициент,1)*ЕСТЬNULL(ВременнаяТаблицаТовары.Упаковка.Коэффициент,1) а здесь нет деления на 0? |
|||
2
Crush
11.07.14
✎
21:55
|
Выразить() - эта функция косячит. Нужно увеличить длину числа
|
|||
3
Crush
11.07.14
✎
21:58
|
+ (2) Убери Выразить и посмотри максимальное число. Скорее всего оно будет более 8 знаков до запятой
|
|||
4
PRO100 NigGaZ
11.07.14
✎
22:37
|
Ну да Процент 428 667 800
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |