|
|
  |
Database libraries, с чем это едят |
|
|
|
Dec 14 2009, 19:25
|

.
     
Группа: Участник
Сообщений: 2 424
Регистрация: 25-12-08
Пользователь №: 42 757

|
Цитата(Владимир @ Dec 12 2009, 19:48)  Особо радует добавление нового компонента Про Ввод через Access можно забыть можно то можно, но ввод сделан не по-людски , скопировать строку целиком нельзя и пару циферек поменять. В таблице Access или Экселе было проще размножать похожие элементы (резисторы) , заменив номинал и партнамбер в скопированной строке . Хотя эта возможность и осталась и без использования новшеств в AD. Цитата(Владимир @ Dec 14 2009, 14:51)  Ну когда вячейке стоит не значение, а ссылка на ячейку другой таблицы. Альтиум этого не понимает, по крайней мере раньше, теперь не проверял вот тут проверил - можно оказывается кое что сделать и в этом направлении. Заводим базу DBLib, указывающую на MDB . В MDB таблицы не размещаем, а только запросы . Запросы альтиум подхватывает как будто это таблицы. В запросах пишем через Select все что хотим , а в качестве полей и таблиц запросов указываем таблицы из связанной базы данный (другой MDB файл, ссылка на таблицы которой лежат в первом MDB) , где структура таблиц может быть произвольной, в том числе и заточенной под другие нужды, например склад, производство, закупки. Удачно то , что ссылки на таблицы "другой" базы Альтиум не показывает в своих окнах а только запросы. Можно даже разделение прав пользователей прикрутить, а Альтиуму разрешать только чтение. Когда уже есть некая производсвенная база со своей оболочкой и структурой данных, то тут это можно и использовать. В той же первоначально имеющейся базе конструктор и новые элементы заводит, с привязкой к символам и футпринтам.
|
|
|
|
|
Dec 14 2009, 20:14
|

Гуру
     
Группа: Модераторы
Сообщений: 11 653
Регистрация: 25-03-05
Из: Минск
Пользователь №: 3 671

|
Цитата(тау @ Dec 14 2009, 21:25)  можно то можно, но ввод сделан не по-людски , скопировать строку целиком нельзя и пару циферек поменять. В таблице Access или Экселе было проще размножать похожие элементы (резисторы) , заменив номинал и партнамбер в скопированной строке . Хотя эта возможность и осталась и без использования новшеств в AD.
вот тут проверил - можно оказывается кое что сделать и в этом направлении. Заводим базу DBLib, указывающую на MDB . В MDB таблицы не размещаем, а только запросы . Запросы альтиум подхватывает как будто это таблицы. В запросах пишем через Select все что хотим , а в качестве полей и таблиц запросов указываем таблицы из связанной базы данный (другой MDB файл, ссылка на таблицы которой лежат в первом MDB) , где структура таблиц может быть произвольной, в том числе и заточенной под другие нужды, например склад, производство, закупки. Удачно то , что ссылки на таблицы "другой" базы Альтиум не показывает в своих окнах а только запросы. Можно даже разделение прав пользователей прикрутить, а Альтиуму разрешать только чтение. Когда уже есть некая производсвенная база со своей оболочкой и структурой данных, то тут это можно и использовать. В той же первоначально имеющейся базе конструктор и новые элементы заводит, с привязкой к символам и футпринтам. Ну парой циферек не обходится. Тем паче всегда на этой паре одну забываешь изменить, и начинаешь потом расхлебывать. зато есть Edit Suplier Link Который позволяет вообще нужное задать самому не занимаясь вводом А насчет запросов, мысль интересная. Будет время, может попробую, Сразу об этом даже не думал. Сэнк за наводку
|
|
|
|
|
Dec 20 2009, 14:16
|

.
     
Группа: Участник
Сообщений: 2 424
Регистрация: 25-12-08
Пользователь №: 42 757

|
Мне понадобилось привязать Альтиум к некоторой базе данных ( производственная ) , содержащей спецификации сборочных единиц , партнамберы элементов, информацию по закупкам и складу. Главная идея - партнамберы должны храниться в единственной базе данных и не дублироваться в разных базах, для исключения ошибок. Общая схема такой базы представлена на 1-м рисунке. Чтобы прицепить эту базу, создаю файл EX5.MDB с запросами и ссылками на проиводственную, например такой (рис.2) В Альтиуме создаю файл библиотеки EX5.DbLib и указываю на EX5.MDB (рис.3) В "Field Settings" настройках для каждого запроса указываю что связь идет через PartNumb . Это надо сделать для каждого запроса , появившегося в колонке Table (слева вверху). Сохраняю EX5.DbLib. Инсталлирую EX5.DbLib в библиотеках Альтиума (4-й рисунок). Вроде работает  Основной смысл использования такого подхода - это возможность лёгкой закачки получаемого из Альтиума ВОМ-а в производственную спецификацию (в производственной базе) без конфликта по партнамберам. По безбумажной технологии. PS. еще пара мыслей: Базы после создания и значительных модификаций надо сжимать , иначе удаленные таблицы , (если они там были) , начнут призраками появляться в Альтиуме под причудливыми именами "~TMPxxxxxx". Сжатие стандартно в ACCESS через "Сервис\Служебные программы\"Сжать и восстановить базу данных..." Бывают производственные базы, защищенные паролями для пользователей. Альтиум же заходит по умолчанию с логином Admin и без пароля. Чтобы Альтиум смог пробиться через запросы к запароленной базе, нужно чтобы действующий администратор назначил юзеру с логином Admin права на чтение тех таблиц из производственной базы, которые фигурируют в запросах альтиумовского MDB файла. В рассмотренном примере права на чтение Admin-у заложены по таблицам CompCls, CompV, FtPRT. Само собой редактировать через Альтиум Summer такую базу уже не получится , а оно и не надо , имхо, ибо баловство.
Сообщение отредактировал тау - Dec 20 2009, 14:25
Эскизы прикрепленных изображений
|
|
|
|
|
Dec 20 2009, 15:15
|

Гуру
     
Группа: Свой
Сообщений: 2 429
Регистрация: 30-11-05
Из: Ижевск
Пользователь №: 11 606

|
Цитата(Владимир @ Dec 20 2009, 17:49)  Так вроде журнал должен уже появиться Появился, но до нас еще не дошел. Цитата Вы могли подпортить запись и дугим образом, например так, чтобы исправленное УГО своим наименованием указывало на другое УГО, имеющееся в библиотеке. А откуда Альтиум должен знать что указанная ссылка на УГО технически и по сути верная? Теперь внимательней читаем то что я написал и смотрим куда на картинке указывают красные стрелки. Capacitor - non polarized исправлено на Capacitor - non polarize (без буквы d в конце) и Discretes.SchLib исправлено на Discretes.SchLi изменено расширение. Такого компонента и бибилотеки с таким расширением нет, если бы они были то было бы неверным другое мое утверждение - "А в схему такой компонент естественно не вставляется потому-что AD не знает откуда брать УГО - я же его попортил."
|
|
|
|
|
Jan 26 2010, 13:01
|
Группа: Участник
Сообщений: 7
Регистрация: 12-07-08
Пользователь №: 38 899

|
Цитата(Владимир @ Nov 29 2009, 12:20)  Как всегда, после выхода у Потапова. Пока она в редакторской правке. Доступна ли уже электронная версия статьи?
|
|
|
|
|
Feb 28 2010, 17:07
|

Местный
  
Группа: Свой
Сообщений: 270
Регистрация: 18-08-09
Из: Москва
Пользователь №: 51 941

|
Подскажите, как лучше организовать совместную работу с dblib? У нас есть сервер, на котором хранятся файлы базы данных, библиотеки УГО и посадочных мест, даташиты... В общем, все, что можно отнести к производству. Смущает следующее: при одновременном редактировании файла библиотеки УГО или посадочных мест альтиум выдает сообщение, что файл был изменен и спрашивает стоит ли его перезагружать. Однако, если я правильно понял что произошло  , при ответе "да", внесенные собственно в этот файл изменения не сохраняются и приходится создавать заново, а при ответе "нет" последующее сохранение может "затереть" изменения, сделанные другим пользователем. Подскажите как лучше всего нам организоваться и есть ли у альтиума какие-то возможности, чтобы помочь в этом?
Сообщение отредактировал Марик - Feb 28 2010, 17:07
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|