Страница 1 из 1
Ошибка при использовании MySQL формулы
Добавлено: 07 янв 2022, 21:45
corduroy
Если поле 330 больше нуля, его сумма отнимается от суммы выполненных работ и умножается на сумму выработки (50,20 проц., выпадающий список), в противном случае (если 330 поле пустое), сумма выполненных работ просто умножается на выработку.
Выскакивает ошибка, с чем может быть связано?
Re: Ошибка при использовании MySQL формулы
Добавлено: 08 янв 2022, 08:36
support
Так как 330 - это строка и может быть пусть, нужно проверять длину поля или можно вот так:
Код: Выделить всё
if(([330]+0)>0,([274]-[330]*get_value[314]),0)
Re: Ошибка при использовании MySQL формулы
Добавлено: 08 янв 2022, 15:27
corduroy
support писал(а): 08 янв 2022, 08:36
Так как 330 - это строка и может быть пусть, нужно проверять длину поля или можно вот так:
Код: Выделить всё
if(([330]+0)>0,([274]-[330]*get_value[314]),0)
Прошу прощения, изначально предоставил не ту формулу, которая у меня, она выглядит так:
Код: Выделить всё
if([330]>0,([274]-[330]*get_value[314]),([274]*get_value[314]))
Если поле расходные материалы [330] больше нуля, его сумма отнимается от суммы выполненных работ[274] и умножается на сумму выработки[314] (50,20 проц., выпадающий список), в противном случае (если 330 поле пустое), сумма выполненных работ[274]просто умножается на выработку[314].
Поле расходные материалы [330] - mysql запрос, который подтягивает значение из сущности расходные материалы, может быть, я допустил ошибку в этом? Он выглядит вот так.

[327] [332] - поле исполнителя работы и за кем закреплен расходный материал.
Re: Ошибка при использовании MySQL формулы
Добавлено: 09 янв 2022, 11:53
support
Ну суть та же. Попробуйте заменить условие на ([330]+0)>0
Re: Ошибка при использовании MySQL формулы
Добавлено: 09 янв 2022, 12:08
nruslan2
в самой ошибке обычно кстати и пишется что не так! так что скрин ошибки тоже бы опубликовать не мешало бы
Re: Ошибка при использовании MySQL формулы
Добавлено: 09 янв 2022, 14:38
corduroy
nruslan2 писал(а): 09 янв 2022, 12:08
в самой ошибке обычно кстати и пишется что не так! так что скрин ошибки тоже бы опубликовать не мешало бы
Прошу прощения, сразу не догадался

Re: Ошибка при использовании MySQL формулы
Добавлено: 09 янв 2022, 14:39
corduroy
support писал(а): 09 янв 2022, 11:53
Ну суть та же. Попробуйте заменить условие на ([330]+0)>0
Теперь формула выглядит вот так
Код: Выделить всё
if(([330]+0)>0,(([274]-[330])*get_value[314]),[274]*get_value[314])
,
но ошибка не ушла.
Скриншот предоставил сообщением выше.
Re: Ошибка при использовании MySQL формулы
Добавлено: 09 янв 2022, 16:03
support
Скобки забыли get_value([314])
Re: Ошибка при использовании MySQL формулы
Добавлено: 09 янв 2022, 18:06
corduroy
support писал(а): 09 янв 2022, 16:03
Скобки забыли get_value([314])
В такие моменты я испытываю испанский стыд, но я искренне благодарен всем за помощь. Дело было в скобках, спасибо
