|
Деление на 0 в запросе | ☑ | ||
---|---|---|---|---|
0
Zombi
24.07.12
✎
10:38
|
В запросе есть поле с таким выражением:
ВЫБОР КОГДА ПартииТоваровНаСкладахОбороты.КоличествоРасход <> 0 ТОГДА ПартииТоваровНаСкладахОбороты.СтоимостьРасход / ПартииТоваровНаСкладахОбороты.КоличествоРасход * РеализацияТоваровУслугТовары.Количество ИНАЧЕ 0 КОНЕЦ При выполнении все равно ругается на деление на 0. Я что то не так сделал? |
|||
1
vicof
24.07.12
✎
10:39
|
Весь запрос покажи
|
|||
2
Zombi
24.07.12
✎
10:40
|
ВЫБРАТЬ
РеализацияТоваровУслугТовары.Номенклатура, РеализацияТоваровУслугТовары.Количество, ВЫБОР КОГДА РеализацияТоваровУслугТовары.Ссылка.УчитыватьНДС И РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма ИНАЧЕ РеализацияТоваровУслугТовары.Сумма + РеализацияТоваровУслугТовары.СуммаНДС КОНЕЦ КАК СНДС, ВЫБОР КОГДА РеализацияТоваровУслугТовары.Ссылка.УчитыватьНДС И РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма - РеализацияТоваровУслугТовары.СуммаНДС ИНАЧЕ РеализацияТоваровУслугТовары.Сумма КОНЕЦ КАК БезНДС, РеализацияТоваровУслугТовары.Ссылка, ВЫБОР КОГДА ПартииТоваровНаСкладахОбороты.КоличествоРасход <> 0 ТОГДА ПартииТоваровНаСкладахОбороты.СтоимостьРасход / ПартииТоваровНаСкладахОбороты.КоличествоРасход * РеализацияТоваровУслугТовары.Количество ИНАЧЕ 0 КОНЕЦ КАК Себестоимость, ВЫБОР КОГДА РеализацияТоваровУслугТовары.Ссылка.УчитыватьНДС И РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма - РеализацияТоваровУслугТовары.СуммаНДС ИНАЧЕ РеализацияТоваровУслугТовары.Сумма КОНЕЦ - ПартииТоваровНаСкладахОбороты.СтоимостьРасход КАК ВаловаяПрибыль, (ВЫБОР КОГДА РеализацияТоваровУслугТовары.Ссылка.УчитыватьНДС И РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма - РеализацияТоваровУслугТовары.СуммаНДС ИНАЧЕ РеализацияТоваровУслугТовары.Сумма КОНЕЦ - ПартииТоваровНаСкладахОбороты.СтоимостьРасход) / ПартииТоваровНаСкладахОбороты.СтоимостьРасход * 100 КАК Эффективность, РеализацияТоваровУслугТовары.Склад, РеализацияТоваровУслугТовары.Ссылка.Организация, РеализацияТоваровУслугТовары.Ссылка.Подразделение, РеализацияТоваровУслугТовары.Ссылка.Контрагент ИЗ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах.Обороты(, , Регистратор, ) КАК ПартииТоваровНаСкладахОбороты ПО РеализацияТоваровУслугТовары.Номенклатура = ПартииТоваровНаСкладахОбороты.Номенклатура И РеализацияТоваровУслугТовары.Склад = ПартииТоваровНаСкладахОбороты.Склад И РеализацияТоваровУслугТовары.Ссылка = ПартииТоваровНаСкладахОбороты.Регистратор ГДЕ РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &НачДата И &КонДата |
|||
3
х86
24.07.12
✎
10:40
|
(0)скобки расставь
|
|||
4
Ork
24.07.12
✎
10:40
|
(0) Возможно здесь : РеализацияТоваровУслугТовары.Количество тоже "0".
|
|||
5
romale
24.07.12
✎
10:40
|
(0) Может тебя ещё и ПартииТоваровНаСкладахОбороты.КоличествоРасход = NULL?
|
|||
6
vicof
24.07.12
✎
10:40
|
ПартииТоваровНаСкладахОбороты.СтоимостьРасход
|
|||
7
Zombi
24.07.12
✎
10:40
|
+ (2) это все в СКД
|
|||
8
hhhh
24.07.12
✎
10:43
|
(7) ну там ниже еще вторая операция деления. Для нее тебе влом на 0 проверять?
|
|||
9
Zombi
24.07.12
✎
10:43
|
Так тоже деление на 0:
ВЫБОР КОГДА ПартииТоваровНаСкладахОбороты.КоличествоРасход <> 0 И ПартииТоваровНаСкладахОбороты.КоличествоРасход <> NULL ТОГДА ПартииТоваровНаСкладахОбороты.СтоимостьРасход / ПартииТоваровНаСкладахОбороты.КоличествоРасход * РеализацияТоваровУслугТовары.Количество ИНАЧЕ 0 КОНЕЦ |
|||
10
romale
24.07.12
✎
10:43
|
ВЫБОР
КОГДА ЕСТЬNULL(ПартииТоваровНаСкладахОбороты.КоличествоРасход, 0) = 0 ТОГДА 0 ИНАЧЕ ПартииТоваровНаСкладахОбороты.СтоимостьРасход / ПартииТоваровНаСкладахОбороты.КоличествоРасход * РеализацияТоваровУслугТовары.Количество КОНЕЦ КАК Себестоимость, |
|||
11
chelentano
24.07.12
✎
10:43
|
(ВЫБОР
КОГДА РеализацияТоваровУслугТовары.Ссылка.УчитыватьНДС И РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма - РеализацияТоваровУслугТовары.СуммаНДС ИНАЧЕ РеализацияТоваровУслугТовары.Сумма КОНЕЦ - ПартииТоваровНаСкладахОбороты.СтоимостьРасход) / ПартииТоваровНаСкладахОбороты.СтоимостьРасход * 100 КАК Эффективность |
|||
12
Kashemir
24.07.12
✎
10:43
|
(9) Кто ж так на NULL проверяет. Смотри (10)
|
|||
13
chelentano
24.07.12
✎
10:44
|
+(11) здесь нет проверки на ноль
|
|||
14
Zombi
24.07.12
✎
10:44
|
(8) Ошибка появилась, когда я именно это деление добавил
|
|||
15
rool
24.07.12
✎
10:44
|
а причем тут скд? просто ПартииТоваровНаСкладахОбороты.КоличествоРасход * РеализацияТоваровУслугТовары.Количество где то равно нулю. проверяй все произведение на ноль
|
|||
16
sash-ml
24.07.12
✎
10:46
|
можно просто скобки дописать (а/в)*с
|
|||
17
hhhh
24.07.12
✎
10:47
|
(15) РеализацияТоваровУслугТовары.Количество в числителе, если что.
|
|||
18
rool
24.07.12
✎
10:48
|
ага. гоню :)
|
|||
19
Zombi
24.07.12
✎
10:49
|
ВЫБОР
КОГДА ЕСТЬNULL(ПартииТоваровНаСкладахОбороты.КоличествоРасход, 0) = 0 ТОГДА 0 ИНАЧЕ ПартииТоваровНаСкладахОбороты.СтоимостьРасход / ПартииТоваровНаСкладахОбороты.КоличествоРасход * РеализацияТоваровУслугТовары.Количество КОНЕЦ так тоже не хочет. А как лучше во втором делении на 0 проверить? |
|||
20
Kashemir
24.07.12
✎
10:50
|
(19) Ошибки деления на 0 здесь не может в принципе. Какое еще второе деление ?
|
|||
21
Classic
24.07.12
✎
10:51
|
(0)
Может не на это поле ругается? |
|||
22
Ненавижу 1С
гуру
24.07.12
✎
10:51
|
(19) точно также
|
|||
23
Zombi
24.07.12
✎
10:51
|
(20) ниже там еще одно деление есть, но раньше работало, вот это деление добавил и теперь:
Ошибка исполнения отчета по причине: Ошибка получения данных по причине: Ошибка создания набора данных "НаборДанных1" по причине: Ошибка при исполнении запроса набора данных по причине: Ошибка выполнения запроса по причине: Ошибка при выполнении операции над данными: Ошибка SQL: Деление на 0 по причине: Ошибка SQL: Деление на 0 по причине: Деление на 0 значения типа Numeric |
|||
24
Classic
24.07.12
✎
10:53
|
(23)
Наверняка на второе ругается. Ты ж там на ноль и нул не проверяешь |
|||
25
Zombi
24.07.12
✎
10:53
|
Вот щас весь запрос:
ВЫБРАТЬ РеализацияТоваровУслугТовары.Номенклатура, РеализацияТоваровУслугТовары.Количество, ВЫБОР КОГДА РеализацияТоваровУслугТовары.Ссылка.УчитыватьНДС И РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма ИНАЧЕ РеализацияТоваровУслугТовары.Сумма + РеализацияТоваровУслугТовары.СуммаНДС КОНЕЦ КАК СНДС, ВЫБОР КОГДА РеализацияТоваровУслугТовары.Ссылка.УчитыватьНДС И РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма - РеализацияТоваровУслугТовары.СуммаНДС ИНАЧЕ РеализацияТоваровУслугТовары.Сумма КОНЕЦ КАК БезНДС, РеализацияТоваровУслугТовары.Ссылка, ВЫБОР КОГДА ЕСТЬNULL(ПартииТоваровНаСкладахОбороты.КоличествоРасход, 0) = 0 ТОГДА 0 ИНАЧЕ ПартииТоваровНаСкладахОбороты.СтоимостьРасход / ПартииТоваровНаСкладахОбороты.КоличествоРасход * РеализацияТоваровУслугТовары.Количество КОНЕЦ КАК Себестоимость, ВЫБОР КОГДА РеализацияТоваровУслугТовары.Ссылка.УчитыватьНДС И РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма - РеализацияТоваровУслугТовары.СуммаНДС ИНАЧЕ РеализацияТоваровУслугТовары.Сумма КОНЕЦ - ПартииТоваровНаСкладахОбороты.СтоимостьРасход КАК ВаловаяПрибыль, (ВЫБОР КОГДА РеализацияТоваровУслугТовары.Ссылка.УчитыватьНДС И РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма - РеализацияТоваровУслугТовары.СуммаНДС ИНАЧЕ РеализацияТоваровУслугТовары.Сумма КОНЕЦ - ПартииТоваровНаСкладахОбороты.СтоимостьРасход) / ПартииТоваровНаСкладахОбороты.СтоимостьРасход * 100 КАК Эффективность, РеализацияТоваровУслугТовары.Склад, РеализацияТоваровУслугТовары.Ссылка.Организация, РеализацияТоваровУслугТовары.Ссылка.Подразделение, РеализацияТоваровУслугТовары.Ссылка.Контрагент ИЗ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах.Обороты(, , Регистратор, ) КАК ПартииТоваровНаСкладахОбороты ПО РеализацияТоваровУслугТовары.Номенклатура = ПартииТоваровНаСкладахОбороты.Номенклатура И РеализацияТоваровУслугТовары.Склад = ПартииТоваровНаСкладахОбороты.Склад И РеализацияТоваровУслугТовары.Ссылка = ПартииТоваровНаСкладахОбороты.Регистратор ГДЕ РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &НачДата И &КонДата на что еще ругаться может? |
|||
26
Kashemir
24.07.12
✎
10:54
|
У тебя 2 операции деления - неужели так сложно определить ?
|
|||
27
Ненавижу 1С
гуру
24.07.12
✎
10:54
|
ну епта
(ВЫБОР КОГДА РеализацияТоваровУслугТовары.Ссылка.УчитыватьНДС И РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма - РеализацияТоваровУслугТовары.СуммаНДС ИНАЧЕ РеализацияТоваровУслугТовары.Сумма КОНЕЦ - ПартииТоваровНаСкладахОбороты.СтоимостьРасход) / ПартииТоваровНаСкладахОбороты.СтоимостьРасход * 100 КАК Эффективность, |
|||
28
Zombi
24.07.12
✎
10:55
|
(24) щас сделал вот так:
ВЫБРАТЬ РеализацияТоваровУслугТовары.Номенклатура, РеализацияТоваровУслугТовары.Количество, ВЫБОР КОГДА РеализацияТоваровУслугТовары.Ссылка.УчитыватьНДС И РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма ИНАЧЕ РеализацияТоваровУслугТовары.Сумма + РеализацияТоваровУслугТовары.СуммаНДС КОНЕЦ КАК СНДС, ВЫБОР КОГДА РеализацияТоваровУслугТовары.Ссылка.УчитыватьНДС И РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма - РеализацияТоваровУслугТовары.СуммаНДС ИНАЧЕ РеализацияТоваровУслугТовары.Сумма КОНЕЦ КАК БезНДС, РеализацияТоваровУслугТовары.Ссылка, ПартииТоваровНаСкладахОбороты.СтоимостьРасход КАК Себестоимость, ВЫБОР КОГДА РеализацияТоваровУслугТовары.Ссылка.УчитыватьНДС И РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма - РеализацияТоваровУслугТовары.СуммаНДС ИНАЧЕ РеализацияТоваровУслугТовары.Сумма КОНЕЦ - ПартииТоваровНаСкладахОбороты.СтоимостьРасход КАК ВаловаяПрибыль, (ВЫБОР КОГДА РеализацияТоваровУслугТовары.Ссылка.УчитыватьНДС И РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма - РеализацияТоваровУслугТовары.СуммаНДС ИНАЧЕ РеализацияТоваровУслугТовары.Сумма КОНЕЦ - ПартииТоваровНаСкладахОбороты.СтоимостьРасход) / ПартииТоваровНаСкладахОбороты.СтоимостьРасход * 100 КАК Эффективность, РеализацияТоваровУслугТовары.Склад, РеализацияТоваровУслугТовары.Ссылка.Организация, РеализацияТоваровУслугТовары.Ссылка.Подразделение, РеализацияТоваровУслугТовары.Ссылка.Контрагент ИЗ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах.Обороты(, , Регистратор, ) КАК ПартииТоваровНаСкладахОбороты ПО РеализацияТоваровУслугТовары.Номенклатура = ПартииТоваровНаСкладахОбороты.Номенклатура И РеализацияТоваровУслугТовары.Склад = ПартииТоваровНаСкладахОбороты.Склад И РеализацияТоваровУслугТовары.Ссылка = ПартииТоваровНаСкладахОбороты.Регистратор ГДЕ РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &НачДата И &КонДата все работает. |
|||
29
Zombi
24.07.12
✎
10:56
|
(27) Подскжите, пожалуйста, как тут проверку на 0 лучше поставить, я вставлю. Но по моему не в этом проблема.
|
|||
30
Kashemir
24.07.12
✎
10:57
|
(29) Это точно - проблема не в этом
|
|||
31
Classic
24.07.12
✎
11:04
|
(28)
И какая у тебя эффективность в результате? |
|||
32
Zombi
24.07.12
✎
11:08
|
||||
33
Classic
24.07.12
✎
11:27
|
Твой запрос в (25) в конструктор проваливается?
|
|||
34
Zombi
24.07.12
✎
11:38
|
(33) Да, запросы делаю конструктором в основном, если что то руками дописываю, всегда конструктором открываю для проверки и выравнивания.
|
|||
35
Oleg_Kag
24.07.12
✎
11:47
|
ИНАЧЕ ПартииТоваровНаСкладахОбороты.СтоимостьРасход / ПартииТоваровНаСкладахОбороты.КоличествоРасход * РеализацияТоваровУслугТовары.Количество
Из чего следует, что РеализацияТоваровУслугТовары.Количество=0 в каком-то документе. Попробуй умножение убрать. |
|||
36
Zombi
24.07.12
✎
11:53
|
(35) Деление же первым выполниться должно, потом на 0 можно и умножить. Но щас попробую уберу.
|
|||
37
Zombi
24.07.12
✎
11:57
|
(35) Вот так:
ВЫБОР КОГДА ЕСТЬNULL(ПартииТоваровНаСкладахОбороты.КоличествоРасход, 0) = 0 ТОГДА 0 ИНАЧЕ ПартииТоваровНаСкладахОбороты.СтоимостьРасход / ПартииТоваровНаСкладахОбороты.КоличествоРасход КОНЕЦ тоже ошибка |
|||
38
olegves
24.07.12
✎
11:58
|
(19)
а так? ВЫБОР КОГДА ЕСТЬNULL(ПартииТоваровНаСкладахОбороты.КоличествоРасход * РеализацияТоваровУслугТовары.Количество, 0) = 0 ТОГДА 0 ИНАЧЕ ПартииТоваровНаСкладахОбороты.СтоимостьРасход / ПартииТоваровНаСкладахОбороты.КоличествоРасход * РеализацияТоваровУслугТовары.Количество КОНЕЦ |
|||
39
Zombi
24.07.12
✎
12:33
|
Сделал все таки проверку во втором делении, все заработало. Странно как раньше работало.
ВЫБРАТЬ РеализацияТоваровУслугТовары.Номенклатура, РеализацияТоваровУслугТовары.Количество, ВЫБОР КОГДА РеализацияТоваровУслугТовары.Ссылка.УчитыватьНДС И РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма ИНАЧЕ РеализацияТоваровУслугТовары.Сумма + РеализацияТоваровУслугТовары.СуммаНДС КОНЕЦ КАК СНДС, ВЫБОР КОГДА РеализацияТоваровУслугТовары.Ссылка.УчитыватьНДС И РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма - РеализацияТоваровУслугТовары.СуммаНДС ИНАЧЕ РеализацияТоваровУслугТовары.Сумма КОНЕЦ КАК БезНДС, РеализацияТоваровУслугТовары.Ссылка, ВЫБОР КОГДА ЕСТЬNULL(ПартииТоваровНаСкладахОбороты.КоличествоРасход, 0) = 0 ТОГДА 0 ИНАЧЕ ПартииТоваровНаСкладахОбороты.СтоимостьРасход / ПартииТоваровНаСкладахОбороты.КоличествоРасход * РеализацияТоваровУслугТовары.Количество КОНЕЦ КАК Себестоимость, ВЫБОР КОГДА РеализацияТоваровУслугТовары.Ссылка.УчитыватьНДС И РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма - РеализацияТоваровУслугТовары.СуммаНДС ИНАЧЕ РеализацияТоваровУслугТовары.Сумма КОНЕЦ - ПартииТоваровНаСкладахОбороты.СтоимостьРасход КАК ВаловаяПрибыль, ВЫБОР КОГДА ЕСТЬNULL(ПартииТоваровНаСкладахОбороты.СтоимостьРасход, 0) = 0 ТОГДА 0 ИНАЧЕ (ВЫБОР КОГДА РеализацияТоваровУслугТовары.Ссылка.УчитыватьНДС И РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма - РеализацияТоваровУслугТовары.СуммаНДС ИНАЧЕ РеализацияТоваровУслугТовары.Сумма КОНЕЦ - ПартииТоваровНаСкладахОбороты.СтоимостьРасход) / ПартииТоваровНаСкладахОбороты.СтоимостьРасход * 100 КОНЕЦ КАК Эффективность, РеализацияТоваровУслугТовары.Склад, РеализацияТоваровУслугТовары.Ссылка.Организация, РеализацияТоваровУслугТовары.Ссылка.Подразделение, РеализацияТоваровУслугТовары.Ссылка.Контрагент ИЗ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах.Обороты(, , Регистратор, ) КАК ПартииТоваровНаСкладахОбороты ПО РеализацияТоваровУслугТовары.Номенклатура = ПартииТоваровНаСкладахОбороты.Номенклатура И РеализацияТоваровУслугТовары.Склад = ПартииТоваровНаСкладахОбороты.Склад И РеализацияТоваровУслугТовары.Ссылка = ПартииТоваровНаСкладахОбороты.Регистратор ГДЕ РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &НачДата И &КонДата |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |