Переименование устройств

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Ответить
Аватара пользователя
nightwind
Сообщения: 333
Зарегистрирован: Вс июн 26, 2016 4:42 pm
Откуда: Барановичи
Благодарил (а): 28 раз
Поблагодарили: 52 раза
Контактная информация:

Переименование устройств

Сообщение nightwind » Пт авг 24, 2018 4:00 pm

Как всем известно, устройства в дереве объектов имеют имена. В основном их придумываешь сам, иногда их придумывают всякие простые устройства автоматом. И что делать, если нужно поменять имя устройства (MysensorsButton02 на что-то более осмысленное)? Простое переименование все сломает, ведь все обращения к объекту из пользовательского кода останутся со старым именем. Значит нужно просто их найти и поменять, ради чего был задуман модуль, переименовывающий объекты. Но все оказалось не так просто.
Поиском по базе находим все упоминания MysensorsButton02. Это просто хренова туча таблиц! Более того встречается такая совсем непонятная шняга как в таблице pvalues -

Код: Выделить всё

 ID , PROPERTY_ID, 	OBJECT_ID, 	VALUE, 	UPDATED, 	PROPERTY_NAME ,	LINKED_MODULES, 	SOURCE, = 	447 	490 	119 	Corridor 	2017-06-11 21:52:08 	MysensorsButton02.linkedRoom 		
кроме логичных айди хранится еще PROPERTY_NAME = MysensorsButton02.linkedRoom текстом!! какую смысловую нагрузку оно несет? зачем хранить текст, есть есть айди?
Потом еще какое-то sdevice3 в таблице objects.
Пробовал переименовывать в таблицах руками - словил кучу непонятных глюков, которые даже описывать неохота.
А я то наивно думал, что в правильно организованной базе достаточно будет поменять только title объекта, и все будет хорошо.
Сломав на этом мозг, идею пока забросил, но сука незакрытый гештальт все время подрывает меня продолжить изыскания и таки дописать модуль)
Посему вопросы к гуру - зачем нужны эти странные текстовые метки, и какие еще могут быть скрытые подводные камни переименования?
Аватара пользователя
tarasfrompir
Сообщения: 3216
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин
Благодарил (а): 223 раза
Поблагодарили: 815 раз

Re: Переименование устройств

Сообщение tarasfrompir » Сб авг 25, 2018 9:52 am

в пу используется всего несколько таблиц так что ничего там страшного нет.... и все там со связями нормально - проверял лично... :roll:
лично я лишних связей не нашел ...
Спасибо нам ПОМОЖЕТ..!
Аватара пользователя
nightwind
Сообщения: 333
Зарегистрирован: Вс июн 26, 2016 4:42 pm
Откуда: Барановичи
Благодарил (а): 28 раз
Поблагодарили: 52 раза
Контактная информация:

Re: Переименование устройств

Сообщение nightwind » Сб авг 25, 2018 8:59 pm

tarasfrompir1 писал(а):
Сб авг 25, 2018 9:52 am
в пу используется всего несколько таблиц так что ничего там страшного нет.... и все там со связями нормально - проверял лично... :roll:
лично я лишних связей не нашел ...
хорошо, что проверял лично)
1. может ты знаешь, что такое sdevice3 в таблице objects?
2. на что влияет и как используется (по всем понятиям лишнее) текстовое поле с имя_объекта.имя_свойства втаблице pvalues? может и не нужно но совсем?
Страшного ничего нет. нужно полностью понимать логику системы, чтобы допилить что-то качественное
Аватара пользователя
tarasfrompir
Сообщения: 3216
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин
Благодарил (а): 223 раза
Поблагодарили: 815 раз

Re: Переименование устройств

Сообщение tarasfrompir » Вс авг 26, 2018 8:37 am

по поводу первого - такого у меня нет и в помине... (может лишняя запись?)
по поводу второго тоже согласен - НО, так же проще строить таблицу обьектов , взял одну таблицу и все получил, а так надо строить дополнительные запросы при постройке таблицы обьектов...
ПС
Да и лишнее поле это не проблема...
Вы же базу пошерстили уже немного.....
Какое количество лишних записей вы уже нашли ?
Я тут в одном модуле писал мусороуборщик...
Так только после текущего модуля мусора на 70 файлов и больше 200 записей в бд... И это не предел..
На одно простое устройство приходится в среднем 50 записей только в базу.
Тут бы базоочиститель какой написать ВОТ БЫЛА БЫ РЕАЛЬНО КРУТАЯ ШТУКА
Спасибо нам ПОМОЖЕТ..!
Ответить