Database Libraries

Jeśli używasz Database Libraries, ponieważ potrzebujesz dobrze zarządzanych komponentów, warto rozważyć komponenty Workspace Library firmy Altium. Hostowane i pobierane z connected Workspace , który zapewnia bezpieczne, wysokointegralnościowe przechowywanie danych komponentów, komponenty biblioteki Workspace oferują zarządzanie cyklem życia, zarządzanie rewizjami oraz integrację z łańcuchem dostaw w czasie rzeczywistym.

► Przeczytaj więcej o Workspace Library.

Altium Designer umożliwia umieszczanie komponentów bezpośrednio z firmowej bazy danych poprzez utworzenie i użycie Database Library. Umieszczanie odbywa się z poziomu panelu Components panel, który po zainstalowaniu biblioteki bazy danych działa jak przeglądarka Twojej bazy danych.

Po umieszczeniu informacje o parametrach projektu mogą być synchronizowane pomiędzy umieszczonymi komponentami a odpowiadającymi im, powiązanymi rekordami w bazie danych, za pomocą polecenia Tools » Update Parameters From Database. Pełne aktualizacje komponentu — w tym symbol graficzny, odwołania do modeli oraz parametry — można wykonać poleceniem Tools » Update From Libraries. Informacje parametryczne z bazy danych mogą też zostać uwzględnione w końcowym zestawieniu materiałowym (BOM), gotowym do zakupu komponentów.

The Move from 32-bit to 64-bit Software

Wraz z wydaniem wersji 18.0 Altium Designer stał się aplikacją 64-bitową. Aby łączyć komponenty projektu z bazą danych w 64-bitowej wersji Altium Designer, silnik bazy danych po stronie backendu również musi być 64-bitowy. Jeśli spróbujesz połączyć się przez 32-bitowy silnik bazy danych Microsoft Access, pojawi się następujący komunikat błędu.

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

Jeśli musisz używać database libraries zarówno z 32-bitowym, jak i 64-bitowym Altium Designer na tym samym komputerze, zajrzyj na następującą stronę, aby dowiedzieć się więcej o dostępnych rozwiązaniach: strona Using Database Libraries with 32-bit and 64-bit Altium Designer on the Same Computer.

Zwróć uwagę, że niektóre błędy połączenia, takie jak niepoprawna składnia w szczegółach Provider pliku Connection String, mogą spowodować wywołanie niewłaściwego silnika bazy danych i wyświetlenie pokazanego powyżej okna błędu, nawet po zainstalowaniu 64-bitowego silnika bazy danych.

Bezpośrednie umieszczanie — więcej niż samo linkowanie

Altium Designer udostępnia trzy metody linkowania komponentu do bazy danych — odpowiednio z użyciem pliku Database Link (*.DbLink), pliku Database Library (*.DbLib) lub pliku SVN Database Library (*.SVNDbLib). Podejście DbLink zapewnia wydajny sposób linkowania i utrzymywania komponentów używanych w projekcie (lub bibliotekach) w synchronizacji z danymi wprowadzonymi do bazy. Podejście DbLib/SVNDbLib wykorzystuje tę sprawdzoną wydajność linkowania i dodaje swobodę bezpośredniego umieszczania komponentu z bazy danych — w istocie dynamicznie tworząc komponent na podstawie informacji przechowywanych w odpowiadającym mu rekordzie bazy danych.

Zanim przejdziemy do bardziej szczegółowego omówienia funkcji database library, warto omówić różnice między tymi metodami w kontekście sposobu ich użycia.

Linkowanie przy użyciu pliku Database Link

Related page: Linkowanie istniejących komponentów z firmową bazą danych

  • Korzystając z tej metody, plik Database Link (*.DbLink) definiuje powiązanie pomiędzy komponentem schematu a dopasowanym rekordem w bazie danych. Dopasowanie rekordu jest realizowane przez linkowanie pól kluczowych — może to być pojedyncze pole kluczowe (np. numer części) lub wiele pól kluczowych (poprzez zdefiniowanie klauzuli Where).
  • W tej metodzie linkowania informacje o modelach i parametrach komponentu muszą być zdefiniowane wcześniej jako część komponentu bibliotecznego Altium Designer. Komponent biblioteczny musi również zawierać wymagane informacje o polu/polach kluczowych jako element swojej definicji. Po zdefiniowaniu dodajesz plik Database Link do pakietu biblioteki (Library Package) lub projektu (Design project), a następnie możesz synchronizować informacje o komponencie (parametry) z zawartością pól w bazie danych.
  • Chociaż każdy fizyczny komponent zdefiniowany przez każdy rekord bazy danych nie musi mapować się na unikalny komponent biblioteczny Altium Designer — wiele komponentów w bazie może współdzielić ten sam symbol — ta metoda linkowania jest zazwyczaj używana w modelu „jeden rekord bazy danych — jeden komponent Altium Designer”. Unikalny komponent Altium Designer może być albo instancją umieszczoną na arkuszu schematu, albo unikalnym komponentem w bibliotece komponentów.
  • W przypadku linkowania w stylu DbLink dołączasz plik Database Link do pakietu biblioteki lub projektu.

Linkowanie przy użyciu pliku Database Library

  • Korzystając z tej metody, plik Database Library (*.DbLib) również definiuje powiązanie pomiędzy komponentem schematu a dopasowanym rekordem w bazie danych. Ponownie, dopasowanie rekordu jest realizowane przez linkowanie pól kluczowych — może to być pojedyncze pole kluczowe (np. numer części) lub wiele pól kluczowych (poprzez zdefiniowanie klauzuli Where).
  • Kluczowa różnica w tej metodzie polega na tym, że symbol komponentu, model oraz informacje o parametrach są przechowywane jako część definicji rekordu dla tego komponentu w zewnętrznej bazie danych. Referencjonowany komponent schematu (przechowywany w bazowej bibliotece komponentów (*.SchLib)) jest wyłącznie symbolem; nie ma podłączonych modeli ani zdefiniowanych parametrów projektowych.
  • Gdy komponent jest umieszczany, jego informacje o parametrach i modelach są tworzone „w locie”, na podstawie odpowiednich pól w dopasowanym rekordzie bazy danych i zgodnie ze zdefiniowanym mapowaniem. Następnie jeden lub więcej z tych parametrów będzie używany do utrzymania stałego łącza zwrotnego do bazy danych, zgodnie ze zdefiniowanymi kryteriami dopasowania, umożliwiając przyszłą synchronizację po umieszczeniu.
  • Ta metoda linkowania, dzięki dynamicznemu tworzeniu komponentów w momencie umieszczania, bardzo dobrze nadaje się do użycia w modelu „wiele rekordów bazy danych — jeden komponent Altium Designer”.
  • W przeciwieństwie do linkowania w stylu DbLink, gdzie plik DbLink musi być dołączony do pakietu biblioteki (lub projektu), plik DbLib/SVNDbLib nie musi być dodawany do projektu. Biblioteka bazy danych (DbLib) jest uwzględniana w Available File-based Libraries — dostępnych z poziomu panelu Components panel. Pamiętaj, że Available File-based Libraries mogą składać się z bibliotek projektu (Project Libraries), zainstalowanych bibliotek (Installed Libraries) lub bibliotek znalezionych wzdłuż określonych ścieżek wyszukiwania.
  • Zwykle pliki DbLib/SVNDbLib konfiguruje się w sposób zorientowany na biblioteki. Na przykład możesz mieć jeden plik dla wszystkich rezystorów opisanych w firmowej bazie danych, inny dla kondensatorów itd.

Odzwierciedlając różny sposób pracy z plikami Database Link w porównaniu do plików Database Library, po dodaniu DbLink do projektu pojawia się on w podfolderze Settings\Database Link Files, natomiast pliki DbLib i SVNDbLib pojawiają się w odpowiednich podfolderach w ramach folderu Libraries, jak pokazano poniżej. Odzwierciedla to fakt, że DbLink działa jako plik interfejsu/powiązania pomiędzy komponentami a odpowiednimi rekordami bazy danych, podczas gdy pliki typu DbLib są używane jak biblioteka, umożliwiając projektantowi przeglądanie rekordów komponentów w bazie danych.

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

DbLib vs SVNDbLib

SVN Database Library jest rozszerzeniem modelu Database Library, z tą różnicą, że źródłowy symbol i modele są przechowywane pod kontrolą wersji.

Biblioteki źródłowe są tworzone, rozbudowywane i utrzymywane w repozytorium opartym o Subversion. Łącze do repozytorium oraz do zewnętrznej bazy danych jest zdefiniowane w pliku SVN Database Library (*.SVNDbLib). A ponieważ to podejście jest rozszerzeniem Database Library, często określa się je jako Version-Controlled Database Library.

Bibliotekarz czy projektant?

W praktyce istnieją dwa tryby pracy z database library pod kontrolą wersji — jako Librarian lub jako Designer.

Jako bibliotekarz (Librarian) nie tylko musisz skonfigurować i utrzymywać zewnętrzne repozytorium kontroli wersji dla bibliotek symboli i modeli, ale będziesz też odpowiedzialny za przygotowanie pliku SVN Database Library. Obejmuje to:

  • Połączenie z zewnętrzną bazą danych komponentów.
  • Zdefiniowanie mapowania rekordu bazy danych na parametry/modele komponentu.
  • Wskazanie łącza do repozytorium SVN, w którym przechowywane są biblioteki symboli i modeli.

Jako projektant (Designer) wykorzystasz plik SVNDbLib wygenerowany przez bibliotekarza i udostępnisz go w panelu Components panel — dodając go do listy Available File-based Libraries — aby móc przeglądać i umieszczać komponenty z bazy danych.

Altium Designer w żaden sposób nie zabrania projektantowi wykonywania czynności typowych dla bibliotekarza. Prawa dostępu/uprawnienia zdefiniowane dla repozytorium kontroli wersji ostatecznie określą, jak daleko projektant może „prowadzić samochód” bibliotekarza. Na przykład projektant może mieć możliwość pobrania (checkout), otwarcia i modyfikacji biblioteki, ale może być zablokowany przed zatwierdzeniem (commit) zmiany do repozytorium.

Sposób wykorzystania tych ról będzie się różnił w zależności od firmy. W większej firmie może istnieć dedykowane centrum bibliotek, które — w roli bibliotekarza — będzie zajmować się wyłącznie konfiguracją i utrzymaniem bibliotek symboli i modeli w repozytorium kontroli wersji oraz generowaniem plików SVN Database Library. Pliki SVNDbLib będą następnie udostępniane projektantom w tej firmie, którzy zainstalują i będą używać plików bibliotecznych do umieszczania komponentów w swoich projektach.

W mniejszej firmie obie role mogą być pełnione przez tę samą osobę. Taka osoba nie tylko skonfiguruje i będzie utrzymywać repozytorium bibliotek, ale również będzie używać zdefiniowanych plików SVNDbLib w swojej pracy projektowej.

Repozytorium kontroli wersji

Related article: Korzystanie z zewnętrznej kontroli wersji

Pliki bibliotek symboli i modeli muszą zostać dodane do repozytorium Subversion (SVN). Altium Designer zawiera dostawcę SVN Version Control Provider; jest on włączany i konfigurowany na stronie Data Management - Version Control page w oknie dialogowym Preferences. Po włączeniu SVN Version Control Provider repozytorium można utworzyć na stronie Data Management - Design Repositories w oknie dialogowym Preferences.

Repozytoria SVN można również tworzyć i zarządzać nimi poza Altium Designer, używając zewnętrznego klienta i serwera SVN, takiego jak TortoiseSVN. Istniejące repozytorium można podłączyć na stronie Data Management - Design Repositories w oknie dialogowym Preferences.

Jedna ważna rzecz, o której należy pamiętać podczas dodawania plików do repozytorium, to fakt, ż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/modeli – zmiana pojedynczego wpisu spowodowałaby, że system kontroli wersji oznaczyłby wszystkie jako zmodyfikowane. Umieszczenie jednego symbolu/modelu w jednym pliku biblioteki jest zgodne z naturą kontroli wersji, pozwalając dokładnie śledzić, co zostało zmodyfikowane, a co nie.

Na potrzeby tego dokumentu przyjmuje się, że repozytorium zostało już utworzone.

Aby uzyskać więcej informacji na temat użycia konkretnego klienta SVN, z którego korzystasz, zapoznaj się z odpowiednią dokumentacją dołączoną do tego oprogramowania. Więcej informacji o kontroli wersji znajdziesz w Using External Version Control. Podczas czytania tego dokumentu pamiętaj, że w przypadku biblioteki bazy danych z kontrolą wersji używany system kontroli źródła musi być Subversion.

Korzystanie z kreatora Library Splitter

Jeśli biblioteki symboli i modeli są tworzone od nowa, nie ma problemu z dopilnowaniem, aby w pliku znajdował się tylko jeden symbol/model. Zazwyczaj jednak biblioteki źródłowe już istnieją. Aby uprościć zadanie rozdzielenia tych bibliotek na pliki zawierające pojedyncze elementy, które następnie zostaną dodane do repozytorium SVN, Altium Designer udostępnia narzędzie do dzielenia – Library Splitter Wizard. Kreator umożliwia szybkie podzielenie wielokomponentowych bibliotek schematowych (*.SchLib) i PCB (*.PcbLib) na indywidualne biblioteki komponentów. Kreator jest dostępny z menu Tools w edytorze biblioteki schematowej, edytorze biblioteki PCB oraz edytorze SVN Database Library.

Podziel biblioteki źródłowe na jeden symbol/model na plik, używając Library Splitter Wizard.Podziel biblioteki źródłowe na jeden symbol/model na plik, używając Library Splitter Wizard.

Przygotowanie do procesu dzielenia obejmuje następujące kroki:

  1. Dodanie wymaganych plików bibliotek źródłowych, które chcesz podzielić (nie muszą znajdować się w tym samym folderze). Użyj strony Libraries to Split, aby wybrać bibliotekę(i) schematową lub PCB, które chcesz podzielić. Kliknij przycisk Add, aby otworzyć okno dialogowe umożliwiające przeglądanie i dodanie wybranej biblioteki(ek) do listy. Dodane biblioteki zostaną później w kreatorze podzielone na indywidualne biblioteki komponentów. Biblioteki źródłowe nie muszą znajdować się w tym samym folderze. Użyj przycisku Remove, aby usunąć z listy zaznaczoną bibliotekę.

  2. Określenie katalogu wyjściowego. Strona Output Directories służy do ustawienia katalogu(ów) wyjściowego(ych) dla indywidualnych bibliotek komponentów. Wskazana Output Directory to ścieżka, w której zostaną umieszczone podzielone biblioteki. Kliknij Change Output Directory, aby w razie potrzeby zaktualizować wskazany i wybrany katalog. Otworzy się okno dialogowe, w którym możesz przeglądać i wybrać zaktualizowany folder dla katalogu wyjściowego.

    Domyślnie katalog wyjściowy zostanie ustawiony na ten sam katalog, w którym przechowywana jest biblioteka źródłowa. Należy zachować ostrożność, jeśli wszystkie oryginalne biblioteki źródłowe są przechowywane w tym samym folderze katalogu źródłowego. Jeśli katalogi wyjściowe nie zostaną określone i pozostaną domyślne – wskazując ten sam folder katalogu źródłowego – możesz otrzymać bardzo dużą mieszaninę bibliotek pojedynczych symboli i modeli. Przesiewanie ich podczas tworzenia struktury repozytorium może okazać się bardzo czasochłonne.

    Ponieważ podzielone pliki bibliotek będą dodawane do repozytorium SVN, dobrym pomysłem może być lokalne przygotowanie na dysku twardym struktury folderów, jaką chcesz mieć w repozytorium – w odniesieniu do plików symboli/modeli. Gdy struktura zostanie zdefiniowana, skopiuj biblioteki źródłowe do odpowiednich folderów w tej strukturze. Następnie możesz pozostawić ustawienia katalogu wyjściowego dla każdej biblioteki źródłowej jako domyślne. Po podziale wygenerowane pliki pojedynczych bibliotek będą już w poprawnych lokalizacjach. Możesz wtedy usunąć oryginalną bibliotekę źródłową z każdego folderu i dodać foldery do repozytorium, używając wybranego klienta SVN.
  3. Skonfiguruj dodatkowe opcje kontrolujące sposób dzielenia bibliotek źródłowych. Obejmują one, dla biblioteki komponentów schematowych, opcje pozwalające usunąć informacje o parametrach i/lub modelach z każdego składowego komponentu – pozostawiając jedynie „goły” symbol.

    Dwie wersje strony Split Libraries; po lewej: strona Split Libraries podczas konwersji pliku .PCBLib . Po prawej: strona Split Libraries podczas konwersji pliku .SCHLib . 
    Dwie wersje strony Split Libraries; po lewej: strona Split Libraries podczas konwersji pliku .PCBLib . Po prawej: strona Split Libraries podczas konwersji pliku .SCHLib .

    Możesz kontrolować sposób dzielenia bibliotek, korzystając ze strony Options . Użyj listy rozwijanej (pokazanej na powyższym obrazie), aby wybrać sposób obsługi nowych plików. Wybranie Overwrite Existing Files (domyślne) spowoduje, że wszystkie nowo utworzone pliki nadpiszą istniejące pliki. Jeśli zostanie wybrane Append Incrementing Number To File Names , narzędzie dzielące biblioteki przeskanuje wszystkie katalogi wyjściowe wybrane na poprzedniej stronie (Output Directories) i utworzy listę plików do ochrony, aby nie zostały nadpisane. Nowe biblioteki komponentów o tej samej nazwie otrzymają dopisany sufiks „_#Increment Number”.

  4. Po określeniu bibliotek źródłowych i opcji kreator przeprowadzi analizę, której wynikiem będzie zestaw pojedynczych bibliotek symboli/modeli, które zostaną utworzone, przedstawiony w formie listy do weryfikacji. Wyświetlana jest nazwa każdej generowanej biblioteki po podziale, a także rzeczywista nazwa komponentu schematowego/modelu footprintu znajdującego się w tej bibliotece. Wskazana jest również oryginalna biblioteka źródłowa. Nazwa użyta dla biblioteki będzie taka sama jak nazwa składowego komponentu/modelu.

    Jeśli w nazwie komponentu/modelu użyto któregokolwiek z następujących znaków, podczas tworzenia nazwy biblioteki zostaną one zastąpione podkreśleniem: '\', '/', '!', ''', '[', ']'.

    Biblioteki komponentów, które zostaną utworzone, można przejrzeć na stronie Review. Splitted Library Name, Component Name oraz Source Library są wyszczególnione, aby pokazać nowe pliki, które zostaną utworzone podczas procesu dzielenia. Listę rozwijaną danych w każdej kolumnie można łatwo wyświetlić, klikając strzałkę w dół po prawej stronie danej kolumny. Ta funkcja jest szczególnie pomocna podczas przeglądania plików w przypadku bardzo dużych bibliotek.

  5. Przejrzyj listę bibliotek, które mają zostać utworzone, a następnie kliknij Next, aby rozpocząć proces dzielenia i ostatecznie uzyskać biblioteki do dodania do repozytorium kontroli wersji. Po pomyślnym ukończeniu kreatora kliknij Finish, aby zamknąć.

Korzystanie z kreatora konwersji SVN Database Library

Innym podejściem do konwersji istniejących bibliotek do biblioteki bazy danych typu SVN jest SVN Database Library Conversion Wizard. Ten kreator konwertuje biblioteki schematowe, PCB, bazodanowe oraz zintegrowane do bibliotek bazy danych SVN. Kreator ma szereg opcji związanych z konwersją, w tym: jak biblioteki źródłowe powinny zostać podzielone, w których katalogach którego repozytorium powinny zostać zapisane, oraz katalog wyjściowy dla utworzonego pliku SVNDbLib i pliku bazy danych MDB. 

Kreator jest dostępny z menu Tools podczas edycji dokumentu biblioteki PCB lub schematowej.

Kreator dzieli biblioteki symboli i footprintów, zatwierdza je w repozytorium oraz tworzy pliki SVNDbLib i bazy danych Access.Kreator dzieli biblioteki symboli i footprintów, zatwierdza 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:

AI-LocalizedTłumaczenie SI
Jeśli znajdziesz błąd, zaznacz tekst/obraz i naciśnij Ctrl + Enter aby wysłać nam wiadomość.
Feature Availability

The features available to you depend on which Altium solution you have – Altium Develop, an edition of Altium Agile (Agile Teams or Agile Enterprise), or Altium Designer (on active term).

If you don’t see a discussed feature in your software, contact Altium Sales to find out more.

Legacy Documentation

Altium Designer documentation is no longer versioned. If you need to access documentation for older versions of Altium Designer, visit the Legacy Documentation section of the Other Installers page.