Database Libraries
W skrócie
- Poznaj różnice między plikami DbLink, DbLib i SVNDbLib, w tym sposób powiązania danych komponentów oraz możliwości umieszczania komponentów w projekcie.
- Dowiedz się, jak informacje z bazy danych wspierają synchronizację parametrów, pełne aktualizacje komponentów i generowanie zestawienia materiałowego (BOM).
- Poznaj wymagania dotyczące 64-bitowego silnika bazy danych oraz organizacji bibliotek źródłowych niezbędnej do korzystania z bibliotek bazodanowych objętych kontrolą wersji.
Altium Designer umożliwia wstawianie komponentów bezpośrednio z firmowej bazy danych poprzez utworzenie i używanie pliku Database Library. Wstawianie odbywa się z poziomu panelu Components, który po zainstalowaniu biblioteki bazodanowej pełni funkcję przeglądarki bazy danych.
Po wstawieniu komponentów można synchronizować informacje o parametrach projektowych między wstawionymi komponentami a odpowiadającymi im powiązanymi rekordami w bazie danych za pomocą polecenia Tools » Update Parameters From Database. Pełną aktualizację komponentów — obejmującą symbol graficzny, odwołania do modeli i parametry — można przeprowadzić za pomocą polecenia Tools » Update From Libraries. Informacje o parametrach z bazy danych można również uwzględnić w końcowym zestawieniu materiałowym (BOM), gotowym do wykorzystania przy zakupie komponentów.
Bezpośrednie wstawianie — więcej niż samo powiązanie
Altium Designer udostępnia trzy metody powiązania komponentu z bazą danych — odpowiednio za pomocą pliku Database Link (*.DbLink), pliku Database Library (*.DbLib) lub pliku SVN Database Library (*.SVNDbLib). Podejście oparte na DbLink zapewnia efektywny sposób powiązania komponentów używanych w projekcie (lub bibliotekach) z danymi wprowadzonymi do bazy danych oraz utrzymywania ich synchronizacji. Podejście DbLib/SVNDbLib rozszerza tę sprawdzoną metodę powiązania o możliwość wstawiania komponentu bezpośrednio z bazy danych — w praktyce komponent jest tworzony dynamicznie na podstawie informacji zapisanych w odpowiadającym mu rekordzie bazy danych.
Zanim przejdziemy do bardziej szczegółowego omówienia funkcji bibliotek bazodanowych, warto przedstawić różnice między tymi metodami pod względem sposobu ich używania.
Tworzenie powiązań za pomocą pliku Database Link
Related page: Powiązanie istniejących komponentów z firmową bazą danych
-
W tej metodzie plik Database Link (
*.DbLink) definiuje powiązanie między komponentem na schemacie a dopasowanym rekordem w bazie danych. Dopasowanie rekordu odbywa się na podstawie pól kluczowych: pojedynczego pola kluczowego (na przykład numeru części) lub wielu pól kluczowych (przez zdefiniowanie klauzuli WHERE). - W przypadku tej metody informacje o modelach i parametrach komponentu muszą być wcześniej zdefiniowane jako część komponentu bibliotecznego Altium Designer. Definicja komponentu bibliotecznego musi również zawierać niezbędne informacje o polach kluczowych. Po ich zdefiniowaniu należy dodać plik Database Link do pakietu bibliotek lub projektu. Następnie można synchronizować informacje o komponencie (parametry) z zawartością pól w bazie danych.
- Choć każdy fizyczny komponent zdefiniowany przez rekord bazy danych nie musi odpowiadać unikatowemu komponentowi bibliotecznemu Altium Designer — wiele komponentów w bazie danych może korzystać z tego samego symbolu — tę metodę powiązania stosuje się zazwyczaj w układzie „jeden rekord bazy danych — jeden komponent Altium Designer”. Unikatowy komponent Altium Designer może być instancją wstawioną na arkusz schematu lub unikatowym komponentem w bibliotece komponentów.
- W przypadku powiązania z bazą danych metodą DbLink plik Database Link należy dołączyć do pakietu bibliotek lub projektu.
Tworzenie powiązań za pomocą pliku Database Library
-
W tej metodzie plik Database Library (
*.DbLib) również definiuje powiązanie między komponentem na schemacie a dopasowanym rekordem w bazie danych. Także tutaj dopasowanie rekordu odbywa się na podstawie pól kluczowych: pojedynczego pola kluczowego (na przykład numeru części) lub wielu pól kluczowych (przez zdefiniowanie klauzuli WHERE). - Kluczowa różnica w tej metodzie polega na tym, że informacje o symbolu, modelu i parametrach komponentu są przechowywane jako część definicji rekordu tego komponentu w zewnętrznej bazie danych. Komponent schematowy, do którego prowadzi odwołanie (przechowywany w źródłowej bibliotece komponentów (*.SchLib)), jest jedynie symbolem; nie ma powiązanych modeli ani zdefiniowanych parametrów projektowych.
- Podczas wstawiania komponentu informacje o jego parametrach i modelach są tworzone na bieżąco na podstawie odpowiednich pól w dopasowanym rekordzie bazy danych i zgodnie ze zdefiniowanym mapowaniem. Co najmniej jeden z tych parametrów jest następnie używany do utrzymywania powiązania z bazą danych zgodnie ze zdefiniowanymi kryteriami dopasowania, co umożliwia późniejszą synchronizację po wstawieniu.
- Ze względu na dynamiczne tworzenie komponentów w momencie ich wstawiania ta metoda powiązania bardzo dobrze nadaje się do pracy w układzie „wiele rekordów bazy danych — jeden komponent Altium Designer”.
- W odróżnieniu od powiązania z bazą danych metodą DbLink, w której plik DbLink musi być dołączony do pakietu bibliotek (lub projektu), pliku DbLib/SVNDbLib nie trzeba dodawać do projektu. Biblioteka bazodanowa (DbLib) znajduje się wśród dostępnych bibliotek opartych na plikach, do których można uzyskać dostęp z poziomu panelu Components. Pamiętaj, że dostępne biblioteki oparte na plikach mogą obejmować biblioteki projektu, zainstalowane biblioteki lub biblioteki znalezione w określonych ścieżkach wyszukiwania.
- Pliki DbLib/SVNDbLib zazwyczaj konfiguruje się według grup bibliotecznych. Na przykład jeden plik może obejmować wszystkie rezystory opisane w firmowej bazie danych, drugi — kondensatory itd.
DbLib a SVNDbLib
Biblioteka SVN Database Library stanowi rozszerzenie modelu Database Library, z tą różnicą, że źródłowy symbol i modele są objęte kontrolą wersji.
Biblioteki źródłowe są tworzone, rozbudowywane i utrzymywane w repozytorium opartym na systemie Subversion. Powiązanie z repozytorium oraz z zewnętrzną bazą danych jest definiowane w pliku SVN Database Library (*.SVNDbLib). Ponieważ podejście to stanowi rozszerzenie biblioteki Database Library, często określa się je jako Version-Controlled Database Library.
Bibliotekarz czy projektant?
Z biblioteką bazodanową objętą kontrolą wersji można zasadniczo pracować w dwóch rolach — jako Librarian lub jako Designer.
Jako bibliotekarz musisz nie tylko skonfigurować i utrzymywać zewnętrzne repozytorium kontroli wersji bibliotek symboli i modeli, ale także odpowiadasz za konfigurację pliku SVN Database Library. Obejmuje to:
- Łączenie z zewnętrzną bazą danych komponentów.
- Definiowanie mapowania rekordów bazy danych na parametry i modele komponentów.
- Określanie odnośnika do repozytorium SVN, w którym przechowywane są biblioteki symboli i modeli.
Jako projektant korzystasz z pliku SVNDbLib utworzonego przez bibliotekarza i udostępniasz go w panelu Components — dodając go do listy Available File-based Libraries — aby móc przeglądać i umieszczać komponenty z bazy danych.
Sposób podziału tych ról różni się w zależności od firmy. Większa firma może mieć osobny dział bibliotek, który w roli bibliotekarza zajmuje się wyłącznie konfiguracją i utrzymaniem bibliotek symboli i modeli w repozytorium kontroli wersji oraz tworzeniem plików SVN Database Library. Pliki SVNDbLib są następnie udostępniane projektantom w firmie, którzy instalują pliki bibliotek i korzystają z nich do umieszczania komponentów w swoich projektach.
W mniejszej firmie obie role może pełnić ta sama osoba. Osoba ta nie tylko konfiguruje i utrzymuje repozytorium bibliotek, ale także korzysta ze zdefiniowanych plików SVNDbLib podczas projektowania.
Repozytorium kontroli wersji
Related article: Korzystanie z zewnętrznej kontroli wersji
Pliki bibliotek symboli i modeli należy dodać do repozytorium Subversion (SVN). Altium Designer zawiera moduł obsługi kontroli wersji SVN, który włącza się i konfiguruje na stronie Data Management - Version Control w oknie dialogowym Preferences. Po włączeniu modułu obsługi kontroli wersji SVN można utworzyć repozytorium na stronie Data Management - Design Repositories w oknie dialogowym Preferences.
Repozytoria SVN można również tworzyć i zarządzać nimi poza Altium Designer, korzystając z zewnętrznego klienta i serwera SVN, na przykład TortoiseSVN. Z istniejącym repozytorium można połączyć się na stronie Data Management - Design Repositories w oknie dialogowym Preferences.
Podczas dodawania plików do repozytorium należy pamiętać o tym, że każdy symbol i model must be stored in its own library file. W zwykłej bibliotece — która może zawierać dowolną liczbę symboli lub modeli — zmiana pojedynczego elementu spowodowałaby oznaczenie ich wszystkich przez system kontroli wersji jako zmodyfikowanych. Przechowywanie jednego symbolu lub modelu w każdym pliku biblioteki odpowiada zasadom działania kontroli wersji i pozwala dokładnie śledzić, co zostało zmodyfikowane, a co nie.
Na potrzeby tego dokumentu przyjęto, że repozytorium zostało już utworzone.
Korzystanie z kreatora dzielenia bibliotek
Jeśli biblioteki symboli i modeli są tworzone od podstaw, zapewnienie, że każdy plik zawiera tylko jeden symbol lub model, nie stanowi problemu. Zazwyczaj jednak biblioteki źródłowe już istnieją. Aby uprościć dzielenie tych bibliotek na pliki zawierające pojedyncze elementy w celu dodania ich do repozytorium SVN, Altium Designer udostępnia narzędzie do dzielenia — Library Splitter Wizard. Kreator umożliwia szybkie dzielenie wielokomponentowych bibliotek schematowych (*.SchLib) i PCB (*.PcbLib) na biblioteki pojedynczych komponentów. Kreator jest dostępny w menu Tools w edytorze bibliotek schematowych, edytorze bibliotek PCB oraz edytorze bibliotek bazodanowych SVN.
Podziel biblioteki źródłowe tak, aby każdy plik zawierał jeden symbol lub model, korzystając z Library Splitter Wizard.
Przygotowanie procesu dzielenia obejmuje następujące kroki:
-
Dodanie wymaganych plików bibliotek źródłowych, które chcesz podzielić (nie muszą znajdować się w tym samym folderze). Na stronie Libraries to Split wybierz biblioteki schematowe lub PCB, które chcesz podzielić. Kliknij przycisk Add, aby otworzyć okno dialogowe umożliwiające wyszukanie żądanych bibliotek i dodanie ich do listy. Dodane biblioteki zostaną podzielone na biblioteki pojedynczych komponentów na dalszym etapie pracy kreatora. Biblioteki źródłowe nie muszą znajdować się w tym samym folderze. Użyj przycisku Remove, aby usunąć wybraną bibliotekę z listy.
-
Określenie katalogu wyjściowego. Strona Output Directories służy do ustawiania katalogów wyjściowych dla bibliotek pojedynczych komponentów. Wyświetlana wartość Output Directory to ścieżka, w której zostaną umieszczone biblioteki powstałe po podziale. W razie potrzeby kliknij Change Output Directory, aby zmienić wyświetlany i wybrany katalog. Otworzy się okno dialogowe, w którym można wskazać nowy folder katalogu wyjściowego.
Domyślnie katalog wyjściowy jest ustawiony na ten sam katalog, w którym znajduje się biblioteka źródłowa. Należy zachować ostrożność, jeśli wszystkie oryginalne biblioteki źródłowe są przechowywane w tym samym folderze. Jeśli katalogi wyjściowe nie zostaną określone i pozostaną ustawienia domyślne — wskazujące ten sam folder źródłowy — może w nim powstać ogromna mieszanina bibliotek pojedynczych symboli i modeli. Ich porządkowanie podczas tworzenia struktury repozytorium może okazać się bardzo czasochłonne.
-
Skonfigurowanie dodatkowych opcji sterujących sposobem dzielenia bibliotek źródłowych. W przypadku biblioteki komponentów schematowych obejmują one opcje umożliwiające usunięcie informacji o parametrach lub modelach z każdego komponentu — tak aby pozostał tylko sam symbol.

Dwa warianty strony Split Libraries; po lewej: strona Split Libraries podczas konwersji pliku .PCBLib . Po prawej: strona Split Libraries podczas konwersji pliku .SCHLib .Sposób podziału bibliotek można kontrolować na stronie Options . Użyj listy rozwijanej (pokazanej na powyższej ilustracji), aby wybrać sposób obsługi nowych plików. Wybranie opcji Overwrite Existing Files (domyślnej) spowoduje zastąpienie istniejących plików nowo utworzonymi. Jeśli zostanie wybrana opcja Append Incrementing Number To File Names , narzędzie do dzielenia bibliotek przeskanuje wszystkie katalogi wyjściowe wybrane na poprzedniej stronie (Output Directories) i utworzy listę plików, które mają być chronione przed nadpisaniem. Do nazw nowych bibliotek komponentów o tej samej nazwie zostanie dodany przyrostek „_#Increment Number”.
-
Po określeniu bibliotek źródłowych i opcji kreator przeprowadzi analizę, której wynikiem będzie lista bibliotek zawierających pojedyncze symbole lub modele, przeznaczonych do utworzenia. Listę tę można przejrzeć. Wyświetlana jest nazwa każdej biblioteki, która zostanie wygenerowana w wyniku podziału, a także rzeczywista nazwa komponentu schematowego lub modelu obudowy w tej bibliotece. Podawana jest również oryginalna biblioteka źródłowa. Nazwa biblioteki będzie taka sama jak nazwa zawartego w niej komponentu lub modelu.
Biblioteki komponentów, które zostaną utworzone, można przejrzeć na stronie Review. Na liście znajdują się Splitted Library Name, Component Name i Source Library, wskazujące nowe pliki, które zostaną utworzone podczas podziału. Listę rozwijaną danych w każdej kolumnie można łatwo otworzyć, klikając strzałkę w dół po prawej stronie danej kolumny. Funkcja ta jest szczególnie przydatna podczas przeglądania plików bardzo dużych bibliotek.
-
Przejrzyj listę bibliotek, które zostaną utworzone, a następnie kliknij Next, aby rozpocząć proces podziału i uzyskać biblioteki do dodania do repozytorium kontroli wersji. Po pomyślnym zakończeniu pracy z kreatorem kliknij Finish, aby go zamknąć.
Korzystanie z kreatora konwersji bibliotek bazodanowych SVN
Innym sposobem przekształcenia istniejących bibliotek w bibliotekę bazodanową typu SVN jest użycie kreatora konwersji bibliotek bazodanowych SVN. Kreator ten konwertuje biblioteki schematowe, PCB, bazodanowe i zintegrowane na biblioteki bazodanowe SVN. Udostępnia szereg opcji związanych z konwersją, w tym sposób podziału bibliotek źródłowych, wybór repozytorium i katalogów, w których mają być przechowywane, oraz katalog wyjściowy dla tworzonych plików SVNDbLib i bazy danych MDB.
Kreator jest dostępny z menu Tools podczas edycji dokumentu biblioteki PCB lub biblioteki schematowej.
Kreator dzieli biblioteki symboli i obudów, zapisuje je w repozytorium oraz tworzy pliki SVNDbLib i bazy danych Access.
Co dalej?
Zapoznaj się z poniższymi stronami, aby dowiedzieć się więcej o różnych aspektach pracy z bibliotekami bazodanowymi:



