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