Страница 1 из 1
Ошибка MySQL формула
Добавлено: 28 авг 2023, 10:20
Vladislav Naumov
Здравствуйте. Формула имеет такой вид. Если поле 372 - расходные материалы имеет значение, то поле 274 - сумма работ минус расходные материалы и умножается на значение выработки (50% или 20%), в противном случае просто сумма работ умножаетя на выработку.
Код: Выделить всё
if(([372]+0)>0,(([274]-[372])*get_value([371]),[274]*get_value([371])
Ошибка выглядит так:

Re: Ошибка MySQL формула
Добавлено: 28 авг 2023, 11:08
Lozhkinda
а где ( закрытия if
Re: Ошибка MySQL формула
Добавлено: 28 авг 2023, 11:12
Lozhkinda
Vladislav Naumov писал(а): 28 авг 2023, 10:20
Здравствуйте. Формула имеет такой вид. Если поле 372 - расходные материалы имеет значение, то поле 274 - сумма работ минус расходные материалы и умножается на значение выработки (50% или 20%), в противном случае просто сумма работ умножаетя на выработку.
Код: Выделить всё
if(([372]+0)>0,(([274]-[372])*get_value([371]),[274]*get_value([371])
Ошибка выглядит так:
Попробуйте разбить запрос на составные и выполнить по очереди
Re: Ошибка MySQL формула
Добавлено: 28 авг 2023, 20:48
Fait
Vladislav Naumov писал(а): 28 авг 2023, 10:20
Здравствуйте. Формула имеет такой вид. Если поле 372 - расходные материалы имеет значение, то поле 274 - сумма работ минус расходные материалы и умножается на значение выработки (50% или 20%), в противном случае просто сумма работ умножаетя на выработку.
Код: Выделить всё
if(([372]+0)>0,(([274]-[372])*get_value([371]),[274]*get_value([371])
Ошибка выглядит так:
В вашем коде ошибка в синтаксисе.
Попробуйте следующий код:
Код: Выделить всё
if(([372]+0)>0,(([274]-[372])*get_value([371])),([274]*get_value([371])))
Я бы ещё добавил IFNULL на значения.
Вот так:
Код: Выделить всё
IF(IFNULL([372],0)>0,((IFNULL([274],0)-IFNULL([372],0))*get_value([371])),(IFNULL([274],0)*get_value([371])))
Re: Ошибка MySQL формула
Добавлено: 29 авг 2023, 11:02
Vladislav Naumov
Здравствуйте.
В принципе перестало что-либо отображаться в этом поле что с одним кодом, что со вторым. В чём может быть проблема?
Re: Ошибка MySQL формула
Добавлено: 29 авг 2023, 20:41
Fait
А какие типы полей 371, 372 и 374?
Re: Ошибка MySQL формула
Добавлено: 01 сен 2023, 15:10
Vladislav Naumov
372 - mysql запрос (подтягивает значение из другой подсущности)
371 - сущность (выпадающий список с выбором значений 20 или 50)
274 - mysql формула , сумма работ
Re: Ошибка MySQL формула
Добавлено: 01 сен 2023, 20:37
Fait
Vladislav Naumov писал(а): 01 сен 2023, 15:10
372 - mysql запрос (подтягивает значение из другой подсущности)
371 - сущность (выпадающий список с выбором значений 20 или 50)
274 - mysql формула , сумма работ
Тогда проблема может быть в том, что поля 372 и 274 - динамические.
Тогда расчёт потенциально может выдавать 0 по причине вложенности запросов.
Выход есть, можно заставить это поле работать.
Просто запрос будет сложнее в этом случае...
Re: Ошибка MySQL формула
Добавлено: 14 сен 2023, 15:33
Vladislav Naumov
Fait писал(а): 01 сен 2023, 20:37
Vladislav Naumov писал(а): 01 сен 2023, 15:10
372 - mysql запрос (подтягивает значение из другой подсущности)
371 - сущность (выпадающий список с выбором значений 20 или 50)
274 - mysql формула , сумма работ
Тогда проблема может быть в том, что поля 372 и 274 - динамические.
Тогда расчёт потенциально может выдавать 0 по причине вложенности запросов.
Выход есть, можно заставить это поле работать.
Просто запрос будет сложнее в этом случае...
Как именно лучше это реализовать посоветуете?
Re: Ошибка MySQL формула
Добавлено: 15 сен 2023, 06:43
Fait
Vladislav Naumov писал(а): 14 сен 2023, 15:33
Fait писал(а): 01 сен 2023, 20:37
Vladislav Naumov писал(а): 01 сен 2023, 15:10
372 - mysql запрос (подтягивает значение из другой подсущности)
371 - сущность (выпадающий список с выбором значений 20 или 50)
274 - mysql формула , сумма работ
Тогда проблема может быть в том, что поля 372 и 274 - динамические.
Тогда расчёт потенциально может выдавать 0 по причине вложенности запросов.
Выход есть, можно заставить это поле работать.
Просто запрос будет сложнее в этом случае...
Как именно лучше это реализовать посоветуете?
Здесь в теме я это точно не подскажу, не хватает исходных данных.
Надо смотреть вашу систему, и тогда понятно будет.
Если готовы, то обратитесь в ЛС, сделаю вам всё