Страница 1 из 1
Database Error: 1052 - Column 'date_added' in where clause is ambiguous
Добавлено: 04 окт 2024, 13:21
alcompstudio
Добрый день!
Возникла ошибка, что может быть причиной (никаких действий не выполнялось, процессы, формулы, функции работали в штатном режиме? Внезапно возникла ошибка (просто выполнилось стандартное действие добавления записи)
Re: Database Error: 1052 - Column 'date_added' in where clause is ambiguous
Добавлено: 04 окт 2024, 14:03
alcompstudio
В общем, методом тыка нашел отчет в верхнем меню, в котором был настроен фильтр по полю (системному) Дата добавления. Если убрать это поле, то ошибка исчезает (в поле даже просто условие поставить "Фильтр по месяцам: 0
"). Что может быть не так с данным полем? Внезапно без каких-то причин "слетело"...
Re: Database Error: 1052 - Column 'date_added' in where clause is ambiguous
Добавлено: 06 окт 2024, 17:55
support
Нашел возможную причину и поправил код для 3.6. Откройте файл includes\classes\reports\reports.php найдите следующую строчку
Код: Выделить всё
public static function prepare_dates_sql_filters($filters, $prefix = 'e')
{
if ($prefix == false)
и if ($prefix == false) замените на: if ($prefix
=== false)
В результате должно получится так:
Код: Выделить всё
public static function prepare_dates_sql_filters($filters, $prefix = 'e')
{
if ($prefix === false)
{
$prefix = '';
}
else
{
$prefix = (strlen($prefix) ? $prefix . '.' : 'e.');
}
И ошибка должна пропасть. Сообщите результат.
Re: Database Error: 1052 - Column 'date_added' in where clause is ambiguous
Добавлено: 06 окт 2024, 19:26
alcompstudio
support писал(а): ↑06 окт 2024, 17:55
Нашел возможную причину и поправил код для 3.6. Откройте файл includes\classes\reports\reports.php найдите следующую строчку
Код: Выделить всё
public static function prepare_dates_sql_filters($filters, $prefix = 'e')
{
if ($prefix == false)
и if ($prefix == false) замените на: if ($prefix
=== false)
В результате должно получится так:
Код: Выделить всё
public static function prepare_dates_sql_filters($filters, $prefix = 'e')
{
if ($prefix === false)
{
$prefix = '';
}
else
{
$prefix = (strlen($prefix) ? $prefix . '.' : 'e.');
}
И ошибка должна пропасть. Сообщите результат.
Спасибо, код добавлю, но результат с исправлением ошибки пока не могу сообщить, т.к. пришлось удалять отчет и создавать новый. К удивлению новый отчет с теми же настройками (и системным полем Дата добавления в том числе) не показал ошибку. Я подумал, что это может быть какой-то сбой на стороне сервера...
Re: Database Error: 1052 - Column 'date_added' in where clause is ambiguous
Добавлено: 07 окт 2024, 08:55
Алексей Г
ПОдтверждаю, данная ошибка выскакивала когда фильтр по дате добавления, пару раз, потом пропала