|
|
  |
Скрипт для DxDatabook, Улучшающий работу |
|
|
|
Jul 31 2012, 11:06
|
не указал(а) ничего о себе.
     
Группа: Свой
Сообщений: 3 325
Регистрация: 6-04-06
Пользователь №: 15 887

|
В 2007, как известно, ментор внес иные баги, нежели чем в 2005, поэтому DxDatabook стала работать хуже. Конкретно у меня возникало много проблем с верификацией схемы, оттранслированной из 2005. Значительно лучше стало после применения скрипта, который принудительно переводит значения аннотируемых свойств в верхний регистр, а при верификации после считывания из схемы и до собственно проверки - наоборот. Исчезла куча глюков (там, похоже, очень кривой алгоритм - потратил несколько дней на выявление причин, понял, что их несколько, описывать, думаю, бессмысленно). И главное, при работе с нетлистом не возникает ошибок при прямой аннотации (ментор забыл, что теперь значения свойств могут быть в нижнем регистре и блокирует нижний регистр при генерации нетлиста). Единственное неудобство в том, что при верификации визуально все значения видны в нижнем регистре, но фактически они в схеме так и остаются в верхнем. Подключать через Configure-Scripting-Settings по ПКМ из окна DxDatabook.
dxdb.rar ( 295 байт )
Кол-во скачиваний: 100
|
|
|
|
|
Aug 15 2012, 19:12
|
не указал(а) ничего о себе.
     
Группа: Свой
Сообщений: 3 325
Регистрация: 6-04-06
Пользователь №: 15 887

|
Цитата(fill @ Aug 15 2012, 21:49)  Ну если б еще понять что у вас там такого происходит, с чем никто другой не сталкивается - за столько лет использования вы первый об этой проблеме говорите. Понять все очень просто: возьмите свой проект в 2005 и переведите в 2007. У меня ушло три месяца. Это у меня еще плата не в менторе. Т.е. все время ушло на DxD (аллегро просто открывает проект в новой версии и всё - 3 секунды). Конкретно по DxDatabook проблемы в верификации и исполнении скриптов. Обработчики событий вызываются дважды при неиерархической верификации и не вызываются вообще при иерархической. Они бы и не потребовались, если бы эта верификация смогла бы тупо сравнить две строки, ту, что в компоненте, и ту, что в БД. Но нет, видимо со времен 2005 мир изменился и 10kOhm уже больше не равно 10kOhm.  Мало того, невозможно перевести все в верхний регистр, ибо "теперь новая идеология" и "теперь у нас свойства", у которых важен регистр. Отправить же в плату схему с маленькими буквами также невозможно, ибо конфиги остались старые, где идет проверка и стоп при виде маленьких букв. Это просто пес тня! И все это только про этап работы с базой...
|
|
|
|
|
Aug 16 2012, 07:42
|
не указал(а) ничего о себе.
     
Группа: Свой
Сообщений: 3 325
Регистрация: 6-04-06
Пользователь №: 15 887

|
Цитата(fill @ Aug 16 2012, 11:27)  Пока я вижу только стенания вида "раньше все работало теперь нет". Я и не скрываю, так оно и есть. Как Вы думаете, это нормально (что взяли и сломали)? Ведь это не я сломал... Цитата(fill @ Aug 16 2012, 11:27)  Хотите конструктивного решения - выложите данные на которых можно: 1. увидеть вашу проблему 2. показать ее решение Ну как мне "выложить данные"? Это же проект (кстати, свободно раздавать я его тоже не могу) + база на сервере. Я пытаюсь объяснить словами. Датабук мне при иерархической верификации перевел все свойства в состояние соответствия с БД. Там встречается нижний регистр. Это не работает при передаче в плату, и конфиги на эту тему я менять не хочу. Скажите, как мне взять и перевести все значения свойств у компонентов обратно в верхний регистр? Писать еще один скрипт? Или тысячу раз проводить неиерархическую верификацию с моим скриптом, который, с горем пополам, но работает?
|
|
|
|
|
Aug 16 2012, 12:00
|
не указал(а) ничего о себе.
     
Группа: Свой
Сообщений: 3 325
Регистрация: 6-04-06
Пользователь №: 15 887

|
Цитата(fill @ Aug 16 2012, 14:59)  В данном случае я не вижу чистого слома. Да, раньше подразумевалось что все значения атрибутов должны быть исключительно в верхнем регистре. Теперь нет - по умолчанию подразумевается смешанный вариант. Соответственно или вводите их изначально в верхнем регистре в БД, или исправьте строчку верификации в конфиг. Отлично. Т.о. просто открыть проект в новой версии, добавить 1 резистор, и сделать новую версию платы невозможно. Нужно перестраивать конфиги, ловить возникающие при этом новые баги и так до бесконечности. Это не чистый слом, верно. Цитата(fill @ Aug 16 2012, 14:59)  Также если установить галочку "Enable case insensitive properties search", то верификатор DxDatabook не ругается на то что значения в БД и на схеме записаны в разном регистре. Неправда. У меня она не работает. Стал бы я писать все эти скрипты? Да, я уже перевел все свойства в верхний регистр. Тем, кто будет этим когда-либо заниматься, советую нажимать на кнопочку "update all unique matches" (про которую, кстати, в хелпе ни слова) на вкладке неиерархической верификации. При этом не надо будет тыкать в каждый компонент, она сама пройдется по всем компонентам на листе и скрипт из первого поста сделает свое дело.
|
|
|
|
|
Aug 16 2012, 14:12
|

Гуру
     
Группа: Модераторы
Сообщений: 4 361
Регистрация: 17-08-04
Из: КП Две Поляны
Пользователь №: 512

|
Цитата Отлично. Т.о. просто открыть проект в новой версии, добавить 1 резистор, и сделать новую версию платы невозможно. Нужно перестраивать конфиги, ловить возникающие при этом новые баги и так до бесконечности. Это не чистый слом, верно. Вообще-то конфиги. правятся один раз и затем ими пользуются во всех проектах в дальнейшем. Да и переход 2005-->2007 делается один раз Цитата(vitan @ Aug 16 2012, 16:00)  Неправда. У меня она не работает. Стал бы я писать все эти скрипты?
--------------------
Чем больше познаю, тем больше понимаю ... насколько мало я все таки знаю. www.megratec.ru
|
|
|
|
|
Aug 16 2012, 17:17
|
не указал(а) ничего о себе.
     
Группа: Свой
Сообщений: 3 325
Регистрация: 6-04-06
Пользователь №: 15 887

|
Цитата(fill @ Aug 16 2012, 18:12)  Вообще-то конфиги. правятся один раз и затем ими пользуются во всех проектах в дальнейшем. Да и переход 2005-->2007 делается один раз Ага, и проект у каждого из нас только один. И его надо только один раз перевести. И когда надо будет быстро сделать ревизию старого проекта в новой версии (т.к. уже перешли), то проблем не будет. И т.д. Я верю, что у Вас работает, но поверьте и Вы. Вы же не думаете, что мне больше нечем заняться, как наводить тень на отлично работающий менторовский софт? Я бы мог привести такую же картинку, но вот только уже потратил день на приведение проекта в порядок, и ломать его специально не буду. Надеюсь, что иерархическую верификацию тоже когда-нибудь починят.
|
|
|
|
|
Aug 17 2012, 07:45
|

Гуру
     
Группа: Модераторы
Сообщений: 4 361
Регистрация: 17-08-04
Из: КП Две Поляны
Пользователь №: 512

|
Цитата(vitan @ Aug 16 2012, 21:17)  Ага, и проект у каждого из нас только один. И его надо только один раз перевести. И когда надо будет быстро сделать ревизию старого проекта в новой версии (т.к. уже перешли), то проблем не будет. И т.д.
Я верю, что у Вас работает, но поверьте и Вы. Вы же не думаете, что мне больше нечем заняться, как наводить тень на отлично работающий менторовский софт? Я бы мог привести такую же картинку, но вот только уже потратил день на приведение проекта в порядок, и ломать его специально не буду. Надеюсь, что иерархическую верификацию тоже когда-нибудь починят. Да, если сделаны настройки для перехода (пара конфиг. файлов) и во всех проектах применены одинаковый набор атрибутов, с одной и той же БД, то действительно в чем проблема открыть старый проект в новой версии и получить транслированный нормально работающий проект в новой версии? Я Вам верю,в том что у Вас почему-то не работает, но это отнюдь не значит 100% что работать не может. Если бы у меня был тестовый проект с указанными проблемами, то можно было бы попытаться разобраться в чем состоит проблема и есть ли решения. А так только констатация фактов.
--------------------
Чем больше познаю, тем больше понимаю ... насколько мало я все таки знаю. www.megratec.ru
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|