コンポーネントを会社のデータベースへリンク
多くの組織で共通する要件として、電子CADのコンポーネントから会社の中央コンポーネントデータベースへリンクできることが挙げられます。Altium Designer は、
リンク後は、
リンク方法の選択について…
Altium Designer では、コンポーネントからデータベースへリンクする方法として、Database Link ファイル(
データベースリンク機能の詳細に入る前に、これら2つの方法の違いを、使い方の観点から整理しておく価値があります。
Database Link ファイルを使用したリンク
- この方法では、Database Link ファイルが回路図コンポーネントとデータベース内の一致するレコードとのリンクを定義します。レコードの一致はキー・フィールドのリンクによって確立され、単一のキー・フィールド(例:品番)でも、複数のキー・フィールド(Where 句を定義)でも構いません。
- このリンク方法では、コンポーネントのモデルおよびパラメータ情報は、Altium Designer のライブラリコンポーネントの一部として事前定義されている必要があります。また、ライブラリコンポーネントの定義には必要なキー・フィールド情報も含める必要があります。これらを定義したら、Database Link ファイルをライブラリパッケージまたは設計プロジェクトに追加し、コンポーネント情報(パラメータ)をデータベース内フィールドの内容と同期できます。
- 各データベースレコードで定義される物理コンポーネントが、必ずしも一意の Altium Designer ライブラリコンポーネントにマップされる必要はありません(多くのデータベースコンポーネントが同じコンポーネントシンボルを共有できます)が、このリンク方法は通常「1つのデータベースレコード対1つの Altium Designer コンポーネント」という形で使用されます。一意の Altium Designer コンポーネントは、回路図シート上に配置されたインスタンスでも、コンポーネントライブラリ内の一意コンポーネントでも構いません。
- DbLink 形式のデータベースリンクでは、ライブラリパッケージまたは設計プロジェクトに Database Link ファイルを含めます。
Database Library ファイルを使用したリンク
- この方法でも、Database Library ファイルが回路図コンポーネントとデータベース内の一致するレコードとのリンクを定義します。ここでもレコードの一致はキー・フィールドのリンクによって確立され、単一のキー・フィールド(例:品番)でも、複数のキー・フィールド(Where 句を定義)でも構いません。
-
このリンク方法では、コンポーネントのシンボル、モデル、パラメータ情報が、外部データベース内の当該コンポーネントのレコード定義の一部として保存されます。参照される回路図コンポーネント(基盤となるコンポーネントライブラリ(
*.SchLib )に保存)はシンボルのみで、リンクされたモデルも、定義済みの設計パラメータも持ちません。 - コンポーネントを配置するとき、対応する一致レコードのフィールドを用い、定義されたマッピングに従って、パラメータおよびモデル情報がその場で生成されます。これらのパラメータのうち1つ以上が、定義された一致条件に従ってデータベースへの継続的なリンクを維持するために使用され、配置後の将来的な同期が可能になります。
- このリンク方法は、配置時にコンポーネントを動的生成するため、「多数のデータベースレコード対1つの Altium Designer コンポーネント」という使い方に非常に適しています。たとえば、データベースに E96 抵抗系列を含め、各レコードが同じ回路図抵抗シンボルと同じ PCB フットプリントを参照する、といった構成が可能です。
- DbLink 形式のデータベースリンクでは DbLink ファイルをライブラリパッケージ(または設計プロジェクト)に含める必要がありますが、DbLib/SvnDbLib ファイルはプロジェクトに追加する必要はありません。データベースライブラリ(DbLib)は Available Libraries に含まれ、Components panel からアクセスできます。Available Libraries は、Project Libraries、Installed Libraries、または指定した検索パス上で見つかったライブラリで構成される点を覚えておいてください。
- 通常、DbLib/SVNDbLib ファイルはライブラリ指向で構成します。たとえば、社内データベースに記載された抵抗全体用に1つ、コンデンサ用にもう1つ、という具合です。
Database Link ファイルの作成
前述のとおり、データベースリンク機能の中核となるのが Database Link ファイルです。このファイルは Altium Designer の DatabaseLink Editor を使用して作成・管理します。メインの設計ウィンドウでアクティブなドキュメントが
DatabaseLink Editor で開いた DbLink ファイルの例。
このタイプの新規ファイルは次の手順で作成します。
-
メインメニューから
File » New » Library » Database Link File コマンドを選択します。 -
Projects panel で目的のプロジェクト項目を右クリックし、コンテキストメニューから
Add New to Project » Database Link File コマンドを選択します。
外部データベースへの接続
エディタのメイン表示ウィンドウにテーブルおよびマッピングデータが表示されるのは、アクティブな Database Link ファイルが目的の外部データベースへ正常に接続された後のみです。接続は
外部データベースへの接続指定。
OLE DB をサポートする任意のデータベースに接続できます。この領域で提供される各オプションは、OLE DB 接続文字列を使用してターゲットデータベースへ接続します。一部のデータベースは OLE DB を提供しない場合がありますが、現在使用されているほぼすべてのデータベース管理システムは Open Database Connectivity(ODBC)インターフェース経由でアクセスできます。データベースリンク機能は Microsoft の ODBC プロバイダを使用しており、ADO(ActiveX Data Object)が任意の ODBC データソースへ接続できるようにします。その結果、任意の ODBC データベースに接続可能です。ODBC データベース用の OLE DB プロバイダは、接続文字列の一部として指定されます。
Access および Excel データベースへの高速接続
接続文字列の作成
社内データベースが Access/Excel ベースではなく、接続文字列を明示的に作成したい場合は、
ダイアログは
データベースにログイン権限が必要な場合は、必要に応じてそれを入力し、ダイアログの
リンクオプションを定義したら、(
Data Link ファイルの指定
接続したいデータソースが Microsoft Data Link ファイル(
接続の実行
外部データベースへの接続を定義すると、
接続情報に問題がある場合(たとえば接続文字列の構築が誤っている、またはパスの入力ミスなど)は接続に失敗し、その旨を知らせるメッセージが表示されます。接続設定を確認し、
初回接続に成功し、Database Link ファイルを保存した後は、対象データベースの場所とファイル名が変更されない限り、ファイルを開くたびに自動的に接続されます。
データベーステーブル一覧
外部データベースへの接続に成功すると、テーブルおよびマッピングデータが読み込まれます。DbLink ドキュメントの左側には、接続されたデータベースに存在するすべてのテーブルが一覧表示されます。
接続されたデータベースに存在するテーブル。
各テーブル項目の横にある
一覧でテーブル項目をクリックすると、現在アクティブなテーブルであることを示すために、アイコンが
から
に変わります。テーブル(全データを含む)はドキュメントの
一致条件の指定
外部データベースのフィールドに格納された情報で部品パラメータ情報を更新するには、まず設計内の各部品を、データベース内の1つのテーブルの1行と「一致」させる必要があります。ドキュメントの
一致条件の制御。
単一キー検索
これらのフィールドを使用して、テーブル内の1つのフィールドと、部品内の1つのパラメータ(全パーツ共通)との一致を指定します。通常、両者で一致させるフィールドは、外部データベース内で各コンポーネントを一意に識別できるもの(例:Part Number)です。選択した検索フィールドは、ドキュメントの
Part Number による単一キーのマッピング
高度な一致 - Where 句
Where 句(SQL 構文で記述)の最も単純な形は、単一キー検索を定義するために選択した項目を反映したものになります。たとえば
データベースフィールド(テーブル列)を囲む角括弧は、
波括弧(ブレース)は、参照している項目が設計パラメータであることを示します。単一引用符は、設計パラメータを数値ではなく文字列として扱うことを指定するために使用します(数値の場合は引用符なし)。SQL は型に敏感なため、型の一致は非常に重要です。設計パラメータは、データベース内の列と同じ型にする必要があります。
標準 SQL 構文を使用して、Where 句は複数の
この場合、データベースの該当テーブル内の単一レコードが、3つの異なる設計パラメータを使用してリンクされます。
標準 SQL 構文を使用すれば、Where 句は理論上、任意に単純にも複雑にもできます。より複雑な句の例は次のとおりです。
この場合、テーブルは3つのデータベースフィールド(
部品パラメータの作成
Altium Designer のコンポーネントに、DbLink ファイルで一致のための
Parameter Management 機能を使用してパラメータを追加
Parameter Management 機能を使用して新しいパラメータを追加するには:
-
回路図ドキュメント(または回路図ライブラリドキュメント)から、メインメニューで
Tools » Parameter Manager を選択します。Parameter Editor Options ダイアログ が表示されます。新しいパラメータをすべての部品に追加するには、Include Parameters Owned By 領域でParts オプションが有効になっていること、そしてThat Meet the Following Criteria 領域の条件としてAll Objects が設定されていることを確認します。
パラメータ管理オプションの設定。
-
OK をクリックすると、Parameter Table Editor ダイアログ が表示され、アクティブなプロジェクト内の回路図ソースドキュメント上にあるすべての部品オブジェクト(またはアクティブな回路図ライブラリ内の回路図コンポーネント)が現在「所有」しているパラメータがすべて表示されます。Add Column ボタンをクリックし、表示される Add Parameter ダイアログ を使用してパラメータ名を定義します。新しいパラメータがすべての部品に追加されるよう、Add to all objects オプションが有効になっていることを確認してください。
Parameter Management 機能を使用して、設計プロジェクト内のすべてのソース回路図にまたがる全パーツへ新しいパラメータを追加する例。
-
新しい列を追加したら、
Accept Changes (Create ECO) ボタンをクリックします。表示されるEngineering Change Order ダイアログを使用してValidate を行い、その後Execute して変更を実行します。これにより、必要な各部品へパラメータが追加されます。
Engineering Change Order を通じてパラメータ変更(新しいパラメータを全パーツへ追加)を実行している例。
Properties Panel を使用したパラメータの追加
-
まず、
SCH Filter パネルで IsPart のクエリを使用し、ライブラリ内のすべてのコンポーネントを選択します。Whole Library オプションが有効になっていることを確認してください。無効の場合、アクティブなライブラリコンポーネントのみが対象になります。
アクティブな回路図ライブラリドキュメント内のすべてのパーツを選択するためのフィルタを設定します。
-
ライブラリエディタの
Properties パネルで、パネル下部のテキストにより、ライブラリ内のすべてのコンポーネントが現在選択されていることを確認します。Properties パネルが表示されていない場合は、ワークスペース右下の
ボタンをクリックして表示します。
すべてのパーツが選択されていることを確認します。
-
パネルの
Parameters タブを使用して必要なパラメータを追加します。Add ボタンをクリックして新しいデフォルトパラメータを追加し、必要に応じて名前を編集します。なお、この時点でパラメータは選択されているすべてのコンポーネントにすでに追加されています。Add ボタンをもう一度クリックすると、2つ目の新しいパラメータが追加されます。
選択したすべてのパーツに必要な新規パラメータを追加します。
データベースフィールドを設計パラメータへマッピングする
既存コンポーネントの設計パラメータ(設計プロジェクトのソース回路図シート上に配置されたもの、またはライブラリパッケージに追加された回路図コンポーネントライブラリで定義されたもの)は、回路図ドキュメント/回路図ライブラリドキュメントがアクティブなときにメイン
リンクされたデータベースのテーブル内レコードと設計コンポーネントが一致した場合、その後の動作は Database Link ファイルで指定されたマッピングおよび更新情報によって決まります。これらの設定は、メインのドキュメントビューの
DbLink ドキュメントの
パラメータマッピング
設計パラメータのエントリは、次の方法で変更できます。
- セルをクリックして、別のパラメータ名を直接入力する。
- セルに関連付けられたドロップダウンリストを使用して、既存の設計パラメータを選択する。
データベース内でコンポーネントに関連付けられたデータフィールドが多数ある場合、すべてを既存の設計コンポーネントへ設計パラメータとして追加したいわけではなく、また追加する必要もないことがあります。これらの情報の多くは、部品表(BOM)生成時にのみ必要となる場合があります。Report Manager ダイアログ には、リンクされたデータベースから直接 BOM にパラメータ情報を追加できるオプションがあり、回路図ソースドキュメントに「持ち運ぶ」情報量を減らせます。詳細は Adding Database Information Directly to a BOM のセクションを参照してください。
データベースからのマッピングを明示的に行いたくないフィールドについては、
)で区別されます。マッピングされているデータベースフィールドは、緑のチェックアイコン(
)で区別されます。
必要に応じてパラメータマッピングを定義します。
パラメータ更新オプション
4つの列は次のとおりです。
-
Update Values - この列のセルは、Altium コンポーネントとデータベースの両方にパラメータが存在するものの、値が現在異なる場合に取るべきアクションを決定します。データベースに保存された値で Altium コンポーネントのパラメータを更新する(Update )か、まったく更新しない(Do not update )かを選択します。 -
Add To Design - この列のセルは、データベースにはパラメータがあるが Altium Designer コンポーネントには存在しない場合に取るべきアクションを決定します。パラメータを追加する(Add )、追加しない(Do not add )、またはデータベースで値が割り当てられている場合にのみ追加する(Add only if not blank in database )を選択できます。 -
Visible On Add - この列のチェックボックスは、新規追加されたパラメータを Altium コンポーネントで表示状態にする(有効)か、しない(無効)かを決定します。 -
Remove From Design - この列のセルは、Altium Designer コンポーネントにはパラメータが存在するが、データベースに存在しない、または存在しても値がない場合に取るべきアクションを決定します。パラメータを削除しない(Do not remove )か、データベースで値が割り当てられていない場合にのみ削除する(Remove only if blank in database )を選択できます。
初期状態では、マッピングされた各データベースフィールドについて、
初期(デフォルト)のパラメータ更新オプション。
画像を見ると、更新オプションに関して重要な点が3つあります。
- マッピングされていないデータベースフィールドには、関連する更新オプションがありません。
-
キー・フィールド(画像の
Part Number など)には、関連する更新オプションがありません。このフィールドはパラメータの照合目的のみに使用されます。 -
Default に設定すると、更新オプションは、Database Link Options ダイアログ(Tools » Options )のDefault Actions タブで指定された対応するデフォルト定義に従います。このダイアログは、ドキュメントビューのField Settings 領域にあるOptions button をクリックしてもアクセスできます。
デフォルトのパラメータ更新オプションを一元的に定義します。
3点目の利点は、更新オプションを中央の場所で指定し、その場所を参照する形で各マッピング済みフィールドの更新オプションを定義できることです。そのため、データベースフィールドを設計パラメータへマッピングすると、関連する更新フィールドに
更新オプションのデフォルト設定を上書きしたい場合は、
必要に応じて、パラメータ更新オプションは手動で上書きできます。
このようにして、設計内のパラメータをどのように更新するかを完全に制御できます。すべてのフィールドを
同期性の確保
Database Linkファイルで必要に応じてマッピングおよび更新オプションを指定し、ファイルを保存すると、データベースからAltium Designerコンポーネントのマッピング済みパラメータへ情報を渡せるようになります。選択したキー・フィールド・パラメータは、Altium Designerコンポーネントが外部データベース内の当該コンポーネントに対応するレコードへのリンクを保持するために使用される点を忘れないでください。つまり将来のどの段階でも、データベース側のパラメータ情報の変更を容易にAltium Designerコンポーネントへ反映でき、両者を同期できます。更新は、回路図/回路図ライブラリエディタのメイン
Dual Synchronization - DbLib/SVNDbLib and DBLink
既存の設計プロジェクトがあり、配置済み部品の大半がDbLinkファイルを使って外部データベースにリンクされている場合があります。設計変更により回路が追加され、そのためのコンポーネントはDatabase Library機能を使って配置されることがあります。関連するDbLib/SVNDbLibファイルは、まったく別の外部データベースを参照している可能性も十分にあります。
Adding Database Information Directly to a BOM
部品表(BOM)のソース情報は、従来は設計内の配置済みコンポーネントのパラメータ情報から取得されてきました。しかしその方法では、BOMでしか使わない情報が回路図に大量に付与されてしまうことがあります。配置済みのAltium DesignerコンポーネントがDbLinkファイルで外部データベースにリンクされている場合、BOM Generatorは、設計パラメータとしてコンポーネントに追加されていないその他のレコード情報も抽出できます。
Report Manager ダイアログを使用して部品表レポートを設定する際、ダイアログのColumnsタブで
)をクリックして、それらをBOMのSourceとして追加します(下図参照)。このオプションは、設計内の1つ以上のコンポーネントが外部データベースにリンクされている場合にのみ利用できます。
Columnsの一覧では、
アイコンが、リンクされた外部データベース内で1つ以上の配置済みコンポーネントに存在するパラメータであることを示します。可視性アイコンをクリックして目のアイコン(
)にし、その列(パラメータ)をBOMに含めます。


