EnglishУкраїнськаmRussian
Login/New
Topic with no new replies

БД проекта


Author Message
Written on: 26. 06. 2013 [14:58]
monia
Олег Намятов
Topic creator
registered since: 21.05.2012
Posts: 173
Доброе время суток

наверное этот вопрос к Роме, заранее извеняюсь

раскажу историю про свою работу.

вобщем работа моя подошла к этапу создания резервного сервера. и до этого не знал проблемы хранения проекта в БД (мой проект разбит на 94 БД, конфигурация каждой котельной храниться в своей БД)
как только я перенес даные БД на резервный сервер и подключил их, возникла проблема :evil:

Не понятно откуда взялись скрипты шаболонв обработки параметров (т.е. откуда то появлялись старые шаблоны, которые я давно переделал. Сохранял все БД с установленной галочкой "Полное удаление БД" в SQLite)

по началу думал, что БД подключились както не правельно. Но дело было не в этом
начал смотреть БД проекта и тут я увидел, что чати JavaLikeCala кода содержиться в столбцах БД "PROGRAM" и "RU#PROGRAM"
не понятно каким оброзом подгружается код из этих столбцов

Это меня очень растроело, поскольку я представил что мне передтся очень много переделывать :(

Что мне делать с данной проблемой и есть ли способ избавиться от повторения такой проблемы?
Как явно указать запись/чтение в определенный столбец ("PROGRAM" и "RU#PROGRAM")?
И вообще галочка "Полное удаление БД" для SQLite работает? ведь если работала, то проект полностью презаписывался в указанных БД. (сохранял узлы по отдельности и сохранял весь проект целиком)
И как сохранить текущий проект в новую БД? Хочу все текушие настройки проекта сохранить в 1 БД, может поможет и мне не придется все перелапачивать. Поскольку на главном сервере все подгружается как надо, благо бэкапы сделал.

Если что могу скинуть БД
Written on: 26. 06. 2013 [16:00]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"monia" wrote:

Не понятно откуда взялись скрипты шаболонв обработки параметров (т.е. откуда то появлялись старые шаблоны, которые я давно переделал. Сохранял все БД с установленной галочкой "Полное удаление БД" в SQLite)

по началу думал, что БД подключились както не правельно. Но дело было не в этом
начал смотреть БД проекта и тут я увидел, что чати JavaLikeCala кода содержиться в столбцах БД "PROGRAM" и "RU#PROGRAM"
не понятно каким оброзом подгружается код из этих столбцов

Неосознанно включили многоязыковую поддержку текстовых переменных. Смотрим "Базовый язык текстовых переменных" здесь: http://wiki.oscada.org/Doc/OpisanieProgrammy#h827-1 .

Т.е. если включили многоязыковую поддержку то позаботьтесь об актуальности текстов, программ в том числе, для тех языков на которых работаете-используете иначе не включайте эту функцию.

В данной ситуации Вы разрабатывали с одной локалью, а теперь запустили в другой или меняли "Базовый язык текстовых переменных"!

Learn, learn and learn better than work, work and work.
Written on: 26. 06. 2013 [19:05]
monia
Олег Намятов
Topic creator
registered since: 21.05.2012
Posts: 173
а это относится только к шаблонам?

и по поводу "Полное удаление БД", оно работает?
Written on: 26. 06. 2013 [19:47]
monia
Олег Намятов
Topic creator
registered since: 21.05.2012
Posts: 173
еще вопрос

когда выключаешь(а потом включаешь) узел, допустем логического уровня, пропадают привязки в "Конфигурация шаблона". это новая фича? или я опять что то не так делаю
Written on: 26. 06. 2013 [20:15]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"monia" wrote:

а это относится только к шаблонам?

Это относится ко всем строкам и текстовым переменным.

"monia" wrote:

и по поводу "Полное удаление БД", оно работает?

Работает, если почитать и понять для чего оно, а не придумывать для него функций:
- Установил этот флаг
- Указал — "Удалить БД"
- Вместе с объектом OpenSCADA был удалён файл БД SQLite *.db.

Learn, learn and learn better than work, work and work.
Written on: 26. 06. 2013 [20:17]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"monia" wrote:

когда выключаешь(а потом включаешь) узел, допустем логического уровня, пропадают привязки в "Конфигурация шаблона". это новая фича? или я опять что то не так делаю

Это побочный эффект фичи, исключающей перегрузку контекста запущенного контроллера.
Исправлю.

Learn, learn and learn better than work, work and work.
Written on: 27. 06. 2013 [12:20]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"roman" wrote:

Это побочный эффект фичи, исключающей перегрузку контекста запущенного контроллера.
Исправлю.

Исправлено и выгружено.

Learn, learn and learn better than work, work and work.
Written on: 27. 06. 2013 [13:44]
monia
Олег Намятов
Topic creator
registered since: 21.05.2012
Posts: 173
Исправлено и выгружено.


сейчас загружу попробую

Вроде как решил свою проблему с БД.
конечно мой подход оказался не очень и трудоемким.

Что я сделал:
Как говорил ранее, проект на главном сервере отображается как надо (я так и не понял каким образом код выдирается из разных столбцов БД "PROGRAM" "RU#PROGRAM")
1) перелопатил весь проект и сделал сохранение узлов и его содержимого в конфиг файл SRV.xml
2) открыл его и немного поковырял, привел в читабельный вид + подправил загрузку транспортных протоколов (узел "Транспорт" in и out). По какой то причине узел "Транспорт" криво подгружался, до моего вмешательства. Может плохо перенесся из БД, не знаю.
3) запустил проект на тестовой машинке и О!!! Хвала покровителю больших кнопочек на клаве :)))) все заработало

Я конечно сразу полез смотреть на актуальность скриптов, и тут меня ждал приятный сюрприз :))) все скрипты оказались актуальными УРА УРА УРА

Рома тебе огромный респект и уважуха, сделал систему достаточно гибкой

Все это конечно хорошо, но есть некоторые сомнения и вопросы связанные с:
1) проект стал дольше сохраняться, открываться и закрываться
2) это нормально, что я перенес весь проект в конфиг файл SRV.xml, он стал весить 11МБ? потом у меня не будет из-за этого проблем с проектом?
3) сброс настроек в "Конфигурация шаблона" - как я понял этот вопрос решен, еще не пробовал, попробую
4) добавление новых обработок параметров - корректно ли они будут записываться в мой конфиг SRV.xml (вроде все принципы xml конфига соблюдал, да и проект запустился идеально)
5) по поводу базового языка, я выбрал RU - в дальнейшем если я случайно его изменю, что произойдет с конфигом? повторится ли такая же ситуация, что и с БД?
6) если я буду делать общее сохранение (выберу станцию и нажму сохранить), то проект полностью перезапишется в моем конфиг файле SRV.xml?

Written on: 27. 06. 2013 [15:22]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"monia" wrote:

Вроде как решил свою проблему с БД.
конечно мой подход оказался не очень и трудоемким.

Мягко говоря не очень и это не решение.

"monia" wrote:

Как говорил ранее, проект на главном сервере отображается как надо (я так и не понял каким образом код выдирается из разных столбцов БД "PROGRAM" "RU#PROGRAM")

Я Вам дал ссылку где это написано! Из "PROGRAM" берётся для языка по умолчанию, а из "RU#PROGRAM" берётся для локали ru_RU, если язык по умолчанию стоит не "ru".
Чуть более предметно про многоязыковые переменные написано здесь: http://wiki.oscada.org/Doc/SQLite#h89-5

"monia" wrote:

1) перелопатил весь проект и сделал сохранение узлов и его содержимого в конфиг файл SRV.xml

Жуть!

"monia" wrote:

Рома тебе огромный респект и уважуха, сделал систему достаточно гибкой

Скорее, что позволяет над собой так издеваться. :)

"monia" wrote:

Все это конечно хорошо, но есть некоторые сомнения и вопросы связанные с:
1) проект стал дольше сохраняться, открываться и закрываться
2) это нормально, что я перенес весь проект в конфиг файл SRV.xml, он стал весить 11МБ? потом у меня не будет из-за этого проблем с проектом?

Естественно. Я БД таких размеров прямо в XML не сливал.

"monia" wrote:

4) добавление новых обработок параметров - корректно ли они будут записываться в мой конфиг SRV.xml (вроде все принципы xml конфига соблюдал, да и проект запустился идеально)

Если будут указываться как рабочая БД "*.*", а рабочая БД указана в "<config>".

"monia" wrote:

5) по поводу базового языка, я выбрал RU - в дальнейшем если я случайно его изменю, что произойдет с конфигом? повторится ли такая же ситуация, что и с БД?

Если не понимаете, что с ним делать то лучше очистите-отключите. Как это работает я писал выше.

"monia" wrote:

6) если я буду делать общее сохранение (выберу станцию и нажму сохранить), то проект полностью перезапишется в моем конфиг файле SRV.xml?

Не полностью, а только изменённые части. Читаем тут: http://wiki.oscada.org/Doc/QuickStart#h988-22

Learn, learn and learn better than work, work and work.



22088