Страница 1 из 2
Очистка истории
Добавлено: Вт сен 07, 2021 4:50 pm
Jilber
Подскажите, как с помощью кода удалить историю какого-то конкретного свойства объекта ? И заодно второй вопрос: выставляю нужное мне время хранения истории свойства, но через какое-то время обнаруживаю, что время снова сбивается на 365 дней. При этом Majordomo вроде бы не обновляется каждую неделю (у меня не альфа).

- История.jpg (49.56 КБ) 4970 просмотров
Re: Очистка истории
Добавлено: Вт сен 07, 2021 5:49 pm
Chainik
Тут нужен прямой запрос к БД.
Сам пока не научился, но примеры на форуме есть:
https://mjdm.ru/forum/viewtopic.php?f=2 ... 9&start=54
Re: Очистка истории
Добавлено: Вт сен 07, 2021 6:08 pm
Jilber
Я так понимаю достаточно вручную посмотреть в БД ID нужного свойства и подставить его в следующий код вместо "$pvalue_id" ? Если само это свойство не удалять его ID ведь никогда не поменяется и нет опасности стереть из базы что-то другое ?
Код: Выделить всё
SQLExec("DELETE FROM phistory WHERE VALUE_ID = $pvalue_id");
Re: Очистка истории
Добавлено: Вт сен 07, 2021 6:18 pm
fandaymon
Jilber писал(а): ↑Вт сен 07, 2021 6:08 pm
Я так понимаю достаточно вручную посмотреть в БД ID нужного свойства и подставить его в следующий код вместо "$pvalue_id" ? Если само это свойство не удалять его ID ведь никогда не поменяется и нет опасности стереть из базы что-то другое ?
Код: Выделить всё
SQLExec("DELETE FROM phistory WHERE VALUE_ID = $pvalue_id");
При нормальной работе даже если и стереть свойство, то id это автоинкремент (т.е.оно всё время возрастает) и у новых свойств id будут другие
А ещё можно просто оптимайзером историю подчищать, без запросов к базе
Re: Очистка истории
Добавлено: Вт сен 07, 2021 6:45 pm
Jilber
Такое впечатление, что в Оптимайзере не сохраняется если пункт "хранить историю, дней" ставишь равным 0.

- Оптимайзер.jpg (36.08 КБ) 4953 просмотра

- Оптимайзер-2.jpg (25.28 КБ) 4953 просмотра
У другого свойства стоит 180 дней и видно, что сохранилось (причём, как я писал в первом сообщении, периодически само сбивается обратно на 365 дней).
Re: Очистка истории
Добавлено: Вт сен 07, 2021 8:40 pm
fandaymon
Jilber писал(а): ↑Вт сен 07, 2021 6:45 pm
Такое впечатление, что в Оптимайзере не сохраняется если пункт "хранить историю, дней" ставишь равным 0.
Оптимайзер.jpg
Оптимайзер-2.jpg
У другого свойства стоит 180 дней и видно, что сохранилось (причём, как я писал в первом сообщении, периодически само сбивается обратно на 365 дней).
Просто 0 в оптимизаторе означает хранить бесконечно
Re: Очистка истории
Добавлено: Ср сен 08, 2021 5:27 am
Logrus
Jilber писал(а): ↑Вт сен 07, 2021 6:08 pm
Я так понимаю достаточно вручную посмотреть в БД ID нужного свойства и подставить его в следующий код вместо "$pvalue_id" ? Если само это свойство не удалять его ID ведь никогда не поменяется и нет опасности стереть из базы что-то другое ?
Код: Выделить всё
SQLExec("DELETE FROM phistory WHERE VALUE_ID = $pvalue_id");
$value_id = (int)getHistoryValueId($ot . '.' . $history_value); //имя об!екта и имя свтйства вызвавшего метод есть в параметрах, т.е. можно получить универсально в методе
но если включена сепарация истории, то нужно получить и имя таблички, что впрочем есть в ПУ счетчика
и выборку для удаления как бы по времени тоже ограничить
Re: Очистка истории
Добавлено: Ср сен 08, 2021 5:30 am
Logrus
Jilber писал(а): ↑Вт сен 07, 2021 6:45 pm
Такое впечатление, что в Оптимайзере не сохраняется если пункт "хранить историю, дней" ставишь равным 0.
Оптимайзер.jpg
Оптимайзер-2.jpg
У другого свойства стоит 180 дней и видно, что сохранилось (причём, как я писал в первом сообщении, периодически само сбивается обратно на 365 дней).
это ПУ, детка

Re: Очистка истории
Добавлено: Вт ноя 21, 2023 8:00 pm
OlegM
Добрый день. Не нашел другой темы по истории свойства объекта. Напишу здесь. Не знаю баг это или так задумано, но не понятно зачем по 2 раза записываются одинаковые подряд значения? И второе. Не правильно происходит оптимизация истории. Например есть две подряд записи с одним и тем-же значением. Если произвести оптимизацию, то удалится не второй показатель (который не нужен), а первый. Т.е. получается после оптимизации график показывает неверную историю с разницей второй одинаковой записи. Я так понимаю эти вопросы конкретно к Сергею, если он тут появляется.
Re: Очистка истории
Добавлено: Ср ноя 22, 2023 4:57 pm
Chainik
По первому вопросу (почему одинаковые значения записываются по 2 раза подряд), если я правильно понимаю, чтобы графики красивее выглядели. Например, фиксируется включение/выключение насоса. Сейчас на графике это выглядит красиво. А без дублирующего значения смотрелось бы не очень.

- CropImage.png (2.14 КБ) 3397 просмотров