Database Libraries

Если вы используете Database Libraries, потому что вам нужны хорошо управляемые компоненты, возможно, вам будет интересно рассмотреть компоненты Workspace Library от Altium. Размещённые и получаемые из подключённого Workspace , который обеспечивает безопасное, высоконадежное хранилище данных компонентов, компоненты библиотек Workspace предлагают управление жизненным циклом, управление ревизиями и интеграцию с цепочкой поставок в реальном времени.

► Подробнее о Workspace Library.

Altium Designer предоставляет возможность размещать компоненты напрямую из корпоративной базы данных, создавая и используя Database Library. Размещение выполняется из панели Components panel, которая после установки database library работает как браузер вашей базы данных.

После размещения информацию о параметрах проекта можно синхронизировать между размещёнными компонентами и соответствующими связанными записями в базе данных с помощью команды Tools » Update Parameters From Database. Полное обновление компонента — включая графический символ, ссылки на модели и параметры — можно выполнить с помощью команды Tools » Update From Libraries. Параметрическую информацию из базы данных также можно включить в итоговую ведомость материалов (BOM), чтобы она была готова для закупки компонентов.

The Move from 32-bit to 64-bit Software

Начиная с версии 18.0 Altium Designer стал 64-битным. Чтобы связать компоненты проекта с базой данных в 64-битной версии Altium Designer, серверный (backend) движок базы данных также должен быть 64-битным. Если попытаться подключиться через 32-битный движок базы данных Microsoft Access, появится следующее сообщение об ошибке.

Error dialog, reporting that a 64-bit version of the Microsoft Access Database engine is required for database linking

Если вам нужно использовать database libraries одновременно с 32-битным и 64-битным Altium Designer на одном компьютере, обратитесь к следующей странице, чтобы узнать больше о доступных решениях: страница Using Database Libraries with 32-bit and 64-bit Altium Designer on the Same Computer.

Обратите внимание, что некоторые ошибки подключения, например неверный синтаксис в Provider сведениях Connection String, могут привести к вызову неправильного движка базы данных и появлению показанного выше диалогового окна ошибки даже после установки 64-битного движка базы данных.

Прямое размещение — больше, чем просто связывание

Altium Designer предоставляет три метода связывания компонента с базой данных: с использованием файла Database Link (*.DbLink), файла Database Library (*.DbLib) или файла SVN Database Library (*.SVNDbLib) соответственно. Подход DbLink обеспечивает эффективный способ связывания и поддержания синхронизации компонентов, используемых в вашем проекте (или библиотеках), с данными, введёнными в базу данных. Подход DbLib/SVNDbLib использует эту проверенную эффективность связывания и дополняет её возможностью размещать компонент напрямую из базы данных — по сути, динамически создавая компонент из информации, хранящейся для него в соответствующей записи базы данных.

Прежде чем углубляться в возможности database library, стоит обсудить различия между этими методами с точки зрения того, как вы их используете.

Связывание с использованием файла Database Link

Related page: Связывание существующих компонентов с корпоративной базой данных

  • При использовании этого метода файл Database Link (*.DbLink) определяет связь между компонентом схемы и соответствующей записью в базе данных. Соответствие записи устанавливается связыванием по ключевому полю — это может быть одно ключевое поле (например, номер детали) или несколько ключевых полей (путём задания условия Where).
  • При таком способе связывания сведения о моделях и параметрах компонента должны быть заранее определены в библиотечном компоненте Altium Designer. Библиотечный компонент также должен включать необходимую информацию о ключевом поле как часть своего определения. После этого вы добавляете файл Database Link в пакет библиотек (Library Package) или проект (Design project), и затем можете синхронизировать информацию о компоненте (параметры) с содержимым полей в базе данных.
  • Хотя каждый физический компонент, определённый каждой записью базы данных, не обязан соответствовать уникальному библиотечному компоненту Altium Designer — многие компоненты базы данных могут использовать один и тот же символ компонента — этот метод связывания обычно применяется по схеме «одна запись базы данных — один компонент Altium Designer». Уникальный компонент Altium Designer может быть либо экземпляром, размещённым на листе схемы, либо уникальным компонентом в библиотеке компонентов.
  • При связывании с базой данных в стиле DbLink вы включаете файл Database Link в пакет библиотек или проект.

Связывание с использованием файла Database Library

  • При использовании этого метода файл Database Library (*.DbLib) также определяет связь между компонентом схемы и соответствующей записью в базе данных. Как и ранее, соответствие записи устанавливается связыванием по ключевому полю — это может быть одно ключевое поле (например, номер детали) или несколько ключевых полей (путём задания условия Where).
  • Ключевое отличие этого метода связывания в том, что символ компонента, модель и параметрическая информация для компонента хранятся как часть определения записи для этого компонента во внешней базе данных. Ссылаемый компонент схемы (хранящийся в базовой библиотеке компонентов (*.SchLib)) — это только символ; у него нет связанных моделей и нет определённых параметров проекта.
  • При размещении компонента его параметры и сведения о моделях создаются «на лету» с использованием соответствующих полей в найденной записи базы данных и в соответствии с заданным сопоставлением (mapping). Затем один или несколько из этих параметров будут использоваться для поддержания постоянной обратной связи с базой данных согласно заданным критериям сопоставления, что позволяет выполнять последующую синхронизацию после размещения.
  • Этот метод связывания, благодаря динамическому созданию компонентов в момент размещения, очень хорошо подходит для использования по схеме «много записей базы данных — один компонент Altium Designer».
  • В отличие от DbLink-стиля связывания с базой данных, где файл DbLink должен быть включён в пакет библиотек (или проект), файл DbLib/SVNDbLib не обязательно добавлять в проект. Библиотека базы данных (DbLib) включается в список Available File-based Libraries и доступна через панель Components panel. Помните, что Available File-based Libraries могут состоять из Project Libraries, Installed Libraries или библиотек, найденных по указанным путям поиска.
  • Обычно файлы DbLib/SVNDbLib настраивают по библиотечному принципу. Например, можно иметь один файл для всех резисторов, описанных в корпоративной базе данных, другой — для конденсаторов и т. д.

Отражая различия в работе с файлами Database Link по сравнению с файлами Database Library, при добавлении DbLink в проект он появляется в подпапке Settings\Database Link Files, тогда как файлы DbLib и SVNDbLib появляются в соответствующих подпапках внутри папки Libraries, как показано ниже. Это отражает то, что DbLink действует как интерфейс или файл-связка между компонентами и соответствующими записями базы данных, тогда как файлы типа DbLib используются как библиотека, позволяя разработчику просматривать записи компонентов в базе данных.

Projects panel showing where each type of database link/library file is included in the project structure

DbLib и SVNDbLib

SVN Database Library — это расширение модели Database Library; отличие в том, что исходный символ и модели хранятся под управлением версий.

Исходные библиотеки создаются, пополняются и поддерживаются в репозитории на базе Subversion. Ссылка на репозиторий и на внешнюю базу данных задаётся в файле SVN Database Library (*.SVNDbLib). Поскольку этот подход является расширением Database Library, его часто называют Version-Controlled Database Library.

Библиотекарь или разработчик?

По сути, есть два режима работы с database library под управлением версий — как Librarian или как Designer.

В роли библиотекаря (Librarian) вам нужно не только настроить и поддерживать внешний репозиторий управления версиями для библиотек символов и моделей, но и отвечать за настройку файла SVN Database Library. Это включает:

  • Подключение к внешней базе данных компонентов.
  • Определение сопоставления (mapping) записи базы данных с параметрами/моделями компонента.
  • Указание ссылки на SVN-репозиторий, в котором хранятся библиотеки символов и моделей.

В роли разработчика (Designer) вы берёте файл SVNDbLib, созданный библиотекарем, и делаете его доступным в панели Components panel — добавляя его в список Available File-based Libraries — чтобы просматривать и размещать компоненты из базы данных.

Altium Designer никоим образом не запрещает разработчику выполнять действия, относящиеся к роли библиотекаря. Права доступа/разрешения, заданные для репозитория управления версиями, в конечном итоге определяют, насколько далеко разработчик сможет «вести машину» библиотекаря. Например, разработчик может иметь возможность выполнить checkout, открыть и изменить библиотеку, но не иметь права выполнить commit изменения в репозиторий.

Использование этих ролей будет различаться от компании к компании. В крупной компании может быть выделенный центр библиотек, который в роли библиотекаря будет заниматься исключительно настройкой и поддержкой библиотек символов и моделей в репозитории управления версиями, а также генерацией файла(ов) SVN Database Library. Затем файл(ы) SVNDbLib будут предоставлены разработчикам (Designer) в этой компании, которые установят и будут использовать библиотечные файлы для размещения компонентов в своих проектах.

В небольшой компании обе роли может выполнять один и тот же человек. Он не только настроит и будет поддерживать репозиторий библиотек, но и будет использовать определённые SVNDbLib в своей проектной работе.

Репозиторий управления версиями

Related article: Использование внешнего управления версиями

Файлы библиотек символов и моделей необходимо добавить в репозиторий Subversion (SVN). В Altium Designer включён провайдер SVN Version Control Provider; он включается и настраивается на странице Data Management - Version Control page диалога Preferences. После включения SVN Version Control Provider репозиторий можно создать на странице Data Management - Design Repositories диалога Preferences.

SVN-репозитории также можно создавать и администрировать вне Altium Designer с помощью внешнего SVN-клиента и сервера, например TortoiseSVN. К существующему репозиторию можно подключиться на странице Data Management - Design Repositories диалога Preferences.

При добавлении файлов в репозиторий важно учитывать, что каждый символ и модель must be stored in its own library file. В обычной библиотеке — которая может содержать любое количество символов/моделей — изменение одной записи приводило бы к тому, что система контроля версий помечала бы как изменённые все записи. Подход «один символ/модель на файл библиотеки» соответствует принципам контроля версий и позволяет точно отслеживать, что было изменено, а что — нет.

Для целей данного документа предполагается, что репозиторий уже создан.

Дополнительные сведения об использовании конкретного SVN-клиента, который вы применяете, см. в документации к этому ПО. Подробнее о контроле версий см. Using External Version Control. При чтении этого документа помните: для библиотеки базы данных под контролем версий используемая система управления исходным кодом должна быть Subversion.

Использование мастера Library Splitter

Если библиотеки символов и моделей создаются с нуля, нет проблем обеспечить «один символ/модель на файл». Однако обычно исходные библиотеки уже существуют. Чтобы упростить задачу разделения таких библиотек на файлы с одной сущностью для добавления в SVN-репозиторий, Altium Designer предоставляет инструмент разделения — Library Splitter Wizard. Мастер позволяет быстро разделять многокомпонентные библиотеки схем (*.SchLib) и PCB (*.PcbLib) на отдельные библиотеки компонентов. Мастер доступен из меню Tools в редакторе библиотек схем, редакторе PCB-библиотек и редакторе SVN Database Library.

Разделите исходные библиотеки на «один символ/модель на файл» с помощью Library Splitter Wizard.Разделите исходные библиотеки на «один символ/модель на файл» с помощью Library Splitter Wizard.

Подготовка к процессу разделения включает следующие шаги:

  1. Добавление необходимых исходных файлов библиотек которые вы хотите разделить (они не обязаны находиться в одной папке). Используйте страницу Libraries to Split для выбора библиотек схем или PCB, которые нужно разделить. Нажмите кнопку Add для открытия диалога, в котором можно найти и добавить нужные библиотеки в список. Добавленные библиотеки будут позже разделены в мастере на отдельные библиотеки компонентов. Исходные библиотеки не обязаны находиться в одной папке. Используйте кнопку Remove для удаления выбранной библиотеки из списка.

  2. Указание выходного каталога. Страница Output Directories используется для задания выходного каталога(ов) для отдельных библиотек компонентов. Указанный Output Directory — это путь, куда будут помещены разделённые библиотеки. При необходимости нажмите Change Output Directory, чтобы обновить указанный и выбранный каталог. Откроется диалог, в котором можно найти и выбрать обновлённую папку для выходного каталога.

    По умолчанию выходной каталог будет установлен в тот же каталог, где хранится исходная библиотека. Следует проявлять осторожность, если все исходные библиотеки изначально хранятся в одной папке исходного каталога. Если выходные каталоги не заданы и оставлены по умолчанию — указывая на одну и ту же папку исходного каталога — в итоге можно получить очень большую «смешанную» коллекцию библиотек одиночных символов и моделей. Просеивание этого набора при создании структуры репозитория может занять очень много времени.

    Поскольку разделённые файлы библиотек будут добавляться в SVN-репозиторий, хорошей идеей может быть заранее настроить локально на жёстком диске структуру папок, которую вы хотите видеть в репозитории — применительно к файлам символов/моделей. После определения структуры скопируйте исходные библиотеки в соответствующие папки внутри этой структуры. Затем можно просто оставить настройки выходного каталога для каждой исходной библиотеки по умолчанию. После разделения сгенерированные одиночные файлы библиотек уже окажутся в правильных местах. Далее можно удалить исходную библиотеку из каждой папки и добавить папки в репозиторий, используя выбранный вами SVN-клиент.
  3. Настройте дополнительные параметры, определяющие, как будут разделяться исходные библиотеки. Для библиотеки компонентов схемы это включает параметры, позволяющие удалить из каждого компонента параметры и/или информацию о моделях — оставив только «чистый» символ.

    Две итерации страницы Split Libraries; слева: страница Split Libraries при преобразовании файла .PCBLib . Справа: страница Split Libraries при преобразовании файла .SCHLib . 
    Две итерации страницы Split Libraries; слева: страница Split Libraries при преобразовании файла .PCBLib . Справа: страница Split Libraries при преобразовании файла .SCHLib .

    Управлять тем, как разделяются библиотеки, можно на странице Options . Используйте выпадающий список (показан на изображении выше), чтобы выбрать, как обрабатываются новые файлы. Выбор Overwrite Existing Files (по умолчанию) приведёт к тому, что любые вновь созданные файлы будут перезаписывать существующие. Если выбран Append Incrementing Number To File Names , инструмент разделения библиотек просканирует все выходные каталоги, выбранные на предыдущей странице (Output Directories), и сформирует список файлов, которые нужно защитить от перезаписи. Новые библиотеки компонентов с тем же именем будут дополнены суффиксом "_#Increment Number".

  4. После задания исходных библиотек и параметров мастер выполнит анализ, результатом которого станет набор одиночных библиотек символов/моделей, которые будут созданы, и он будет выведен списком для проверки. Отображается имя каждой создаваемой разделённой библиотеки, а также фактическое имя компонента схемы/модели посадочного места внутри этой библиотеки. Также указывается исходная библиотека. Имя, используемое для библиотеки, будет таким же, как имя соответствующего компонента/модели.

    Если в имени компонента/модели использованы какие-либо из следующих символов, при создании имени библиотеки они будут заменены на подчёркивание: '\', '/', '!', ''', '[', ']'.

    Создаваемые библиотеки компонентов можно просмотреть на странице Review. В столбцах Splitted Library Name, Component Name и Source Library перечислены новые файлы, которые будут созданы в процессе разделения. Выпадающий список данных в каждом столбце можно легко открыть, щёлкнув по стрелке вниз в правой части заголовка столбца. Эта функция особенно полезна при проверке файлов очень больших библиотек.

  5. Проверьте список создаваемых библиотек и затем нажмите Next, чтобы запустить процесс разделения и в итоге получить библиотеки, которые будут добавлены в репозиторий системы контроля версий. После успешного завершения мастера нажмите Finish, чтобы закрыть его.

Использование мастера преобразования SVN Database Library

Другой подход к преобразованию существующих библиотек в библиотеку базы данных типа SVN — это SVN Database Library Conversion Wizard. Этот мастер преобразует библиотеки схем, PCB, базы данных и интегрированные библиотеки в SVN database libraries. Мастер содержит ряд параметров, связанных с преобразованием, включая то, как следует разделять исходные библиотеки, в каких каталогах какого репозитория их хранить, а также выходной каталог для создаваемых файлов SVNDbLib и базы данных MDB. 

Мастер доступен из меню Tools при редактировании документа библиотеки PCB или схемы.

Мастер разделяет библиотеки символов и посадочных мест, выполняет их check-in в репозиторий и создаёт файлы SVNDbLib и базы данных Access.Мастер разделяет библиотеки символов и посадочных мест, выполняет их check-in в репозиторий и создаёт файлы SVNDbLib и базы данных Access.

Что дальше?

См. следующие страницы, чтобы узнать больше о различных аспектах работы с библиотеками баз данных:

AI-LocalizedЛокализовано с помощью ИИ
Если вы обнаружили проблему, выделите текст/изображение и нажмитеCtrl + Enter, чтобы отправить нам свой отзыв.
Доступность функциональных возможностей

Набор доступных функциональных возможностей зависит от вашего решения Altium – Altium Develop, редакция Altium Agile (Agile Teams или Agile Enterprise) или Altium Designer (на активной подписке).

Если вы не видите в своем ПО функцию, описанную здесь, свяжитесь с отделом продаж Altium, чтобы узнать больше.

Устаревшая документация

Документация Altium Designer больше не разделена по версиям ПО. Если вам необходим доступ к документации по старым версиям Altium Designer, посетите раздел Устаревшая документация на странице Прочие установщики.