コンポーネントを会社のデータベースへリンク

 

このドキュメントでは、Altium Designer のデータベースリンク機能を使用してコンポーネントを外部のデータベースへリンクする詳細な情報を説明します。 

多くの会社が要求する共通な点は、エレクトニクス CAD のコンポーネントを会社の主要なコンポーネントデータベースへリンクすることです。Altium Designer では、データベースリンクファイルを作成、使用して、コンポーネントを会社のデータベースのレコードへリンクする機能があります。データベースリンクファイルは、設計プロジェクト、またはライブラリパッケージへ追加されます(回路図シートに配置したコンポーネント、または一般的にソース回路図ライブラリで定義したコンポーネントからリンクできます)。   

リンクしたら、Update Parameters From Database コマンドを使用して、データベースレコードからマップした情報をコンポーネントのデザインパラメータへ移行できます。それから、この情報はコンポーネントの調達のために Bill of Materials (BOM) に含めることができます。  

リンク方法の選択...

Altium Designer では、コンポーネントをデータベースへリンクする 2 つの方法(Database Link file (*.DBLink)、または Database Library file (*.DBLib) を使用)があります。前者は、デザイン(または、ライブラリ)で使用したコンポーネントと、データベースで入力したデータを同期させリンクします。後者は、データベースレコードに保存された情報からコンポーネントを作成して、データベースから直接、コンポーネントを配置できます。  
データベースリンク機能を実行する前に、これらの 2 つの方法の違いを考えてください。 

Database Link ファイル (*.DBLink) を使用してリンク

Database Link ファイルを使用して、回路図コンポーネントとデータベースのレコード間のリンクを定義できます。キーフィールド(単キー(例えば、part number)、または複数キー(Where 句を定義して)を指定できます)を指定してレコードと一致する情報をリンクさせます。   
このリンク方法では、コンポーネントのモデルやパラメータ情報は Altium Designer のライブラリコンポーネントで事前に定義する必要があります。また、その定義でライブラリコンポーネントにキーフィールド情報を含める必要があります。これを定義したら、Database Link ドキュメントをライブラリパッケージ、または設計プロジェクトへ追加します。それから、データベースのフィールドの内容とコンポーネント情報(パラメータ)を同期できます。  
データベースレコードで定義した物理的なコンポーネントは Altium Designer のライブラリコンポーネントへマップする必要はありませんが(多くのデータベースコンポーネントは同じコンポーネントシンボルを共有できます)、この方法は "1 つのデータベースレコードに対して 1 つのAltium Designer のコンポーネント" へリンクされます。Altium Designer のコンポーネントは、回路図シートに配置したコンポーネント、またはコンポーネントライブラリ内のコンポーネントになります。 
DBLink 形式のデータベースリンクでは、プロジェクトに Database Link ファイルが含まれます。  

Database Library ファイル (*.DBLib) を使用してリンク

Database Library ファイルを使用して、回路図コンポーネントとデータベースのレコード間のリンクを定義できます。キーフィールド(単キー(例えば、part number)、または複数キー(Where 句を定義して)を指定できます)をリンクして、レコードと一致させることができます。  
このリンク方法では、コンポーネントシンボル、コンポーネントのモデル、パラメータ情報は、外部のデータベースのコンポーネントのレコードとして保存されます。参照した回路図コンポーネント(基本のコンポーネントライブラリ (*.SchLib) 内の)はシンボルのみで空です。リンクしたモデルや定義したデザインパラメータはありません。 
コンポーネントを配置する時、一致するデータベースレコードのフィールドを使用し定義したマッピングに従ってパラメータとモデル情報は作成されます。それから、これらのパラメータは、定義した一致基準によってデータベースとのリンクを維持するために(配置後に同期できるように)使用します。  
このリンク方法は、コンポーネントを配置した時にデータベースレコードを Altium Designer のコンポーネントへ割り当てる形式です。 
DBLink 形式のデータベースリンクと違って、DBLink ファイルをプロジェクトに含める必要があります。DBLib ファイルはプロジェクトに追加する必要はありません。データベースライブラリは、Libraries パネルにある Available Libraries で登録する必要があります。Available Libraries は、Project Libraries、Installed Libraries、指定した検索パスで見つかったライブラリから成ります。 
通常、DBLib ファイルで適応させるライブラリを設定します。例えば、会社のデータベースにある抵抗、コンデンサ等の 1 つを扱うかもしれません。 

データベースリンクファイルの作成

データベースリンク機能の要は、データベースリンクファイルです。このファイルは、Altium Designer のデータベースリンクエディタ(図 1)を使用して作成、管理します。 

図 1. データベースリンクエディタ。

メインデザインウィンドウで *.DBLink ファイルがアクティブドキュメントである時、データベースリンクエディタはアクティブになります。このタイプの新しいファイルを作成するには以下の方法を行います:

  • File » New » Database Link File コマンドを使用します。
  • Projects パネルのプロジェクトを右クリックし、ポップアップメニューから Add New to Project » Database Link File を選択します。 
    プロジェクトに追加した時、データベースリンクファイルが Projects パネルの Settings\Database Link Files サブフォルダ下に表示されます。 

外部のデータベースへ接続

データベースリンクファイルが外部のデータベースへ接続された後、テーブルとマッピングデータがメイン画面に表示されます。接続は、その画面の Source of Connection 欄を使用して定義します(図 2)。  

図 2. 外部のデータベースへの接続を指定。 

OLE DB をサポートするデータベースへ接続できます。この画面にあるオプションは、OLE DB コネクションストリングをデータベースへ接続するために使用します。いくつかのデータベースは OLE DB をサポートしていないかもしれません。しかし、今日、使用しているデータベース管理システムは Open Database Connectivity (ODBC) インターフェースを通してアクセスできます。データベースリンク機能は、Microsoft の ODBC プロバイダ(ADO (ActiveX Data Object) が ODBC データソースへ接続できます)を使用します。この結果、どんな ODBC データベースへも接続できます。ODBC データベースの OLE DB プロバイダは、コネクションストリングとして指定されます。    

Access や Excel のデータベースへ接続 

Microsoft Access、または Microsoft Excel を使用してデータベースを作成した時、Select Database Type オプションを使用してコネクションストリングを容易に作成できます。このオプションを使用して、データベースタイプとデータベースファイルを選択します。コネクションストリングは自動で構成され、Use Connection String オプションの欄に表示されます。   
フルパスを指定できます。または、データベースリンクファイルへの相対パスを保存できます。 

コネクションストリングの構築

会社のデータベースが Access、または Excel ベースでない場合、また明確にコネクションストリングを構築したい場合、Use Connection String オプションを有効にします。それから、右にある Build ボタンをクリックします。Data Link Properties ダイアログが表示されます(図 3)。  

図 3. 外部のデータベースへ接続を指定。

OLE DB プロバイダ(Microsoft Jet 4.0)は、ダイアログの Provider タブでデフォルトで設定されています。そのため、Connection タブが表示されます。これは、新しいデータベースリンクファイルのデフォルトのプロバイダ設定で、Access データベースファイル (*.mdb) へ接続するために使用します。必要に応じて、プロバイダを変更します。   
Connection タブで、接続したいデータベースの名称(パスを含む)を入力します。あるいは、... ボタンを使用してファイルを指定します。 

データベースでログイン権限が必要な場合、ダイアログの Advanced タブで設定します。All タブには、OLE DB プロバイダに関連する拡張オプションやリンクオプションの概要がリスト表示されます。オプションは、このタブから必要に応じて修正できます。   
リンクオプションを定義したら、Test Connection ボタン(Connection タブ上の)をクリックして接続が成功したかチェックできます。接続が成功したら確認ダイアログが表示されます。 

データリンクファイルの指定

接続したいデータソースが Microsoft Data Link ファイル (*.udl) を使用して記述されている場合、3 番目の接続オプション(Use Data Link File)を有効にします。そして、Browse ボタンをクリックしファイルを指定します。Data Link File はコネクションストリングの保存場所です。  

接続の継続

外部のデータベースへ接続を定義した後、Connect ボタンの文字は太文字(接続を継続できることを意味します)になります。接続情報が正しい場合、データベースのテーブルとマッピング情報が Database Link ドキュメントへロードされます。Connect ボタンの文字は Connected に変わり、ボタンはグレーアウト表示になります。    

接続情報に問題がある(例えば、コネクションストリングが正しくない、または誤ったパスが入力されている)場合、接続は失敗し、メッセージが表示されます(図 4)。 

図 4. 接続が失敗したメッセージを表示。 

接続設定を確認し Connect ボタンを再度、クリックします。 

最初の接続が成功し Database Link ファイルを保存すれば、ファイルを開く度に自動で接続されます(データベースの場所とファイル名が指定されています)。 

データベーステーブル リスト

外部のデータベースへ接続が成功したら、テーブルとマッピングデータがロードされます。画面の左側に、接続したデータベースに存在するテーブルがリスト表示されます(図 5)。  

図 5. 接続したデータベースに存在するテーブル。

データベースからパラメータを更新する時、各テーブルの右にある Enable オプションでそのテーブルを使用するかしないかコントロールできます。 
リストのテーブルの項目をクリックすると、そのテーブルがアクティブになっていることを識別するためにアイコンが  から  に変わります。テーブル(全てのデータを含む)は、画面の Table Browser タブに表示されます(図 6)。これは、編集できないテーブルのコピーで、外部のデータベースを開かないでその内容を参照できます。  

図 6. 接続したデータベースのソーステーブルを閲覧。 

一致条件の指定

外部のデータベースのフィールドに保存した part パラメータ情報を更新するために、最初に、デザインの各 part はデータベースの 1 つのテーブルに対して 1 つのフィールドで '一致' させる必要があります。メイン画面の Field Settings 領域で一致条件(簡単に single key lookup を使用するか、または詳細な一致条件を指定するために Where 句を使用して)を定義できます(図 7)。 
一致条件はテーブルごとに指定します。 

図 7. 一致条件をコントロール。

Single Key Lookup

Single key lookup オプションが有効(デフォルト)な場合、Database field と Part parameter 欄を利用できます。前者は、データベースのテーブルにあるフィールド名(欄のヘッダ)がリスト表示されます。後者は、デザインのパーツにあるパラメータ(システムとユーザ定義のパラメータ)がリスト表示されます。Part parameter 欄のドロップダウンリストは、親プロジェクトをコンパイル後に表示されることに注意してください。   
テーブル内のフィールドと part 内のパラメータ(通常、全ての parts に共通)間を一致させるために、これらのフィールドを使用します。一致フィールドは、Part Number のような外部のデータベースで各コンポーネントを識別するものです。選択した lookup フィールドは Field Mappings タブで識別できます(Design Parameter がグレーアウト表示されます)。  

図 8. Part Number でマッピングした単キー。 

Update Parameters From Database 機能を使用する時、情報は配置した回路図コンポーネントのキーパラメータから読み込まれます。それから、データベースの(キー)フィールドを検索します。そして、一致した時、親テーブルのレコード内の他のセルの情報を、回路図コンポーネントのパラメータへマップできます。  

詳細な一致 – Where 句

固有の part number/id がある場合、Single key lookup オプションで一致させることができますが、capacitance、または resistance のような固有でないパラメータの場合、一致させることができません。この場合に、回路図コンポーネントをデータベーステーブルへリンクするために複数の一致条件を指定できる Where 句を使用します。
最も簡単な形式では、single key lookup の一致条件が(SQL シンタックスを使用して記述された)Where 句に反映されます。例えば、データベースフィールドで Part Number、(デザインの全てのパーツに存在する)Part parameter で Part Number を選択した場合、Where 句は以下のようになります:
[Part Number] = '{Part Number}'

database field (テーブル欄)の角括弧は、Database Connection ダイアログの Advanced タブで指定した引用する文字です(図 9)。   

このダイアログを表示するには、Source of Connection 領域内の Advanced ボタンをクリック、または Tools メニューを使用します。 
中括弧は、参照されている項目がデザインパラメータであることを示しています。シングルクォートは、数字(クォート無し)とは対照的に文字として扱うデザインパラメータを指定するために使用します。SQLでタイプが重要であるのと同様に、一致タイプは重要です。デザインパラメータは、データベースの欄と同じタイプである必要があります。    
Where 句は、標準の SQL シンタックスを使用して複数の Database field/Part parameter の一致条件を設定できます。例えば、以下です:
[Capacitance] = '{Capacitance}' AND [Tolerance] = {Tolerance} AND [Manufacturer] = '{Manufacturer}'
この場合、データベースのテーブル内の 1 つのレコードは 3 つの異なるデザインパラメータにリンクされます。Tolerance デザインパラメータの項目は引用されないことに注意してください。これは、データベースのテーブル内の欄タイプが数字である(文字でない)ことを意味します。  
標準の SQL シンタックスを使用して、Where 句をシンプル、または複雑に作成できます。複雑に定義した例としては以下になります:
[Tolerance] BETWEEN {Min Tolerance} AND {Max Tolerance} AND [Price] <= {Max Price} AND [Manufacturer] IN ('{Preferred Manufacturer 1}', '{Preferred Manufacturer 2}')

この場合、テーブルは 3 つのデータベースフィールド(Tolerance、Price、Manufacturer)に基づいた一致条件になります。tolerance は、Min Tolerance と Max Tolerance のデザインパラメータで定義した範囲内である必要があります。price は、Max Price デザインパラメータで指定した値以下、または同じ値である必要があります。また、manufacturer は、Preferred Manufacturer 1 と Preferred Manufacturer 2 のデザインパラメータで指定したいずれかになります。  

Part Parameter の作成

適切なパラメータがコンポーネントに存在しない場合(DBLink ファイルで一致条件として Part parameter を使用するために)、それを作成する必要があります。'ベース' パラメータは、Parameter Manager、または Inspector パネルを使用して追加できます。   

Parameter Manager を使用してパラメータを追加 

Parameter Manager を使用して新しいパラメータを追加するには、回路図ドキュメント(または、回路図ライブラリドキュメント)で Tools » Parameter Manager を選択します。Parameter Editor Options ダイアログが表示されます。新しいパラメータを全てのパーツへ追加するには、Include Parameters Owned By 領域で Parts オプションを有効にします。全てのオブジェクトが基準として設定されます(図 10)。   
 

図 10. パラメータ管理オプションの設定。

OK をクリックすると Parameter Table Editor ダイアログが表示されます。そこに、アクティブプロジェクトの回路図ソースドキュメントに配置されているパーツ(または、アクティブ回路図ライブラリ内の回路図コンポーネント)の全てのパラメータが表示されます。Add Column ボタンをクリックします。Add Parameter ダイアログが表示され、そこでパラメータの名称を定義します(図 11)。新しいパラメータを全てのパーツに追加するために Add to all objects オプションを有効にします。It is best to leave the Value for the parameter unassigned – at this stage you just want to get the parameter added to each part. しかし、データベースのレコードへリンクするには、後でパーツごとにパラメータの値を定義する必要があります。 

図 11. 新しいパラメータを全てのパーツへ追加。 

新しい欄が追加されたら Accept Changes (Create ECO) ボタンをクリックします。Engineering Change Order ダイアログで変更を確認し、実行します(パーツへパラメータが追加されます)。   

図 12. パラメータの変更を実行。

Inspector パネルを使用してパラメータを追加 

Inspector パネルを使用して、セレクトしたパーツへ新しいパラメータを追加できます。以下は、SCHLIB Filter や SCHLIB Inspector パネルを使用して、アクティブ回路図ライブラリドキュメント内の全てのコンポーネントへ同じパラメータを追加する方法を説明します。 

図 13. Inspector パネルからパラメータを作成。 

最初に、SCH Filter パネルで IsPart のクエリを使用して、ライブラリ内の全てのコンポーネントをセレクトします。Whole Library オプションを有効にします。そうでないと、アクティブなライブラリコンポーネントしか考慮されません。SCHLIB Inspector パネルで、全てのコンポーネントがセレクトされているのを確認できます。それから、パネルの Parameters の領域を使用してパラメータを追加します。   
Add User Parameter の右の欄をクリックします。そして、値を入力しないで Enter を押します。表示されたダイアログでパラメータの名称を入力します。OK をクリックした後、パラメータはセレクトしたコンポーネントへ追加されます。SCHLIB Inspector パネルの Parameters 領域のパラメータの項目が表示されます(図 14)。   

図 14. セレクトしたコンポーネントへ追加された新しいパラメータ。 

Database Field をデザインパラメータへマッピング 

コンポーネントのデザインパラメータ(設計プロジェクトのソース回路図シートに配置したコンポーネントのパラメータ、またはライブラリパッケージ内の回路図コンポーネントライブラリで定義したパラメータ)は、Update Parameters From Database コマンド(回路図ドキュメント/回路図ライブラリドキュメントがアクティブの時に Tools メニューから利用できます)を使用して会社のデータベースに保存された外部の情報で更新されます。   

デザインコンポーネントとデータベースのテーブル内のレコードが一致すると、Database Link ファイルの情報で更新されます。これらは、DatabaseLink エディタのメインデザインウィンドウの Field Mappings タブで設定します(図 15)。マッピングと更新オプションはテーブルごとに指定します。  

図 15. パラメータマッピングと更新オプションの指定。

パラメータマッピング

Field Mappings タブにある最初の(左から)2 つの欄は、データベースのどの情報をコンポーネントのパラメータへマップするかコントロールできます。 

Database Field Name 欄には、データベースのアクティブなテーブルの全てのフィールド(欄)がリスト表示されます。Design Parameter の欄では、データベース内のフィールドにマップする必要があるデザインパラメータを指定できます。 
データベースへ接続すると同時に、最初のマッピングは自動で実行されます(データベースフィールドと同じ名称のデザインパラメータへマップします)。例えば、データベース内のフィールドが Tolerance の場合、Tolerance と言う名称のデザインパラメータがそれにマップされます。以下の方法で、デザインパラメータの名称を容易に変更できます:

  • セルをクリックし新しい名称を直接、入力します。 
  • セルのドロップダウンリストを使用して、既存のデザインパラメータを選択します(親プロジェクトを事前にコンパイルしていた場合)。 
    データベースで、コンポーネントに関連したデータフィールドが多数あるかもしれません。この情報の多くは、Bill of Materials を生成する時だけに必要かもしれません。Report Manager には、データベースから直接、BOM へパラメータ情報を追加できるオプションが含まれています(回路図ソースドキュメントへ更新する情報量を減らすことができます)。詳細については、Adding Database Information Directly to a BOM の項目を参照してください。  
    データベースからマップしたくないフィールドについては、Design Parameter を None に設定します。マップされていないデータベースフィールドは赤いクロスアイコン ( ) で表示されます。マップされたデータベースフィールドは緑色のチェックアイコン ( ) で表示されます。

パラメータ更新オプション

Update Parameters From Database コマンドを使用してコンポーネントを更新している時、Field Mappings タブの残りの欄(図 15)ではパラメータへの動作を指定できます。以下の説明で、Altium Designer のコンポーネントと言う用語は回路図シートに配置されたコンポーネント、または回路図コンポーネントライブラリ(ライブラリパッケージの一部)で定義したコンポーネントを表します。  
4 つの欄は以下のようになります:

  • Update Values – この欄のセルは、パラメータが Altium Designer のコンポーネントとデータベース内にあるが値が異なる場合に実行する動作を決めます。データベースに保存された値を含む Altium Designer のコンポーネントのパラメータを更新、または更新しないかを選択します。    
  • Add To Design – この欄のセルは、パラメータがデータベースにあるが Altium Designer のコンポーネントに存在しない場合に実行する動作を決めます。パラメータを追加/追加しない、またはデータベースでそれに割り当てられた値がある場合のみパラメータを追加するか選択できます。  
  • Visible On Add – この欄のチェックボックスは、新しく追加したパラメータを回路図上に表示する(有効)か、表示しない(無効)かどうか決めます。 
  • Remove From Design – この欄のセルは、 Add To Design フィールドと逆の動作を実行します。パラメータが Altium Designer のコンポーネントに存在するがデータベースに無い場合に実行する動作を決めます。パラメータを削除しない、またはデータベースでそれに割り当てられた値が無い場合のみパラメータを削除するか選択できます。  
    図 16 のように、最初は Update Values、Add To Design、Remove From Design フィールドは Default として設定され Visible On Add オプションは無効になっています。  

図 16. パラメータ更新オプションの指定。

図 16 を見て、更新オプションに関して 3 つの重要な点があります:

  • マップされていないデータベースフィールドには更新オプションはありません。 
  • キーフィールド(例えば、図 16 の Part Number)には更新オプションはありません。このフィールドは一致条件を指定するために使用します。  
  • Default の設定は、Database Link Options ダイアログ (Tools » Options) で指定したようにデフォルト定義に従った更新オプションを実行します。また、このダイアログは Field Settings 領域内の Options ボタンをクリックして表示できます。  

この 3 番目の点は、主要な場所からマップされたフィールドの更新オプションを指定できる利点となります。それが、デザインパラメータへデータベースフィールドをマッピングすると同時に、Default が更新フィールドへ自動でロードされる理由です。 

図 17. パラメータ更新オプションのデフォルト設定。

更新オプションのデフォルト設定を無視したい場合、Field Mappings タブの更新フィールド内をクリックしてからドロップダウンをクリックします。そこで、更新方法を選択できます(図 18)。 

図 18. パラメータ更新オプションを手動で設定。 

この方法で、デザイン内のパラメータを更新する方法をコントロールします。全てのフィールドを Default に設定し、Database Link Options ダイアログから更新方法を決めることができます(更新フィールドを個々に設定、またはデフォルトと混在できます)。実行した時、更新は Engineering Change Order ダイアログから実行されます。この段階で更新したくない内容がある場合、特定の変更を含めないように選択できます。 

同期

マッピング後、更新オプションを Database Link ファイルで指定しファイルを保存しました。これで、データベースからコンポーネントのマップされたパラメータへ情報を渡す段階です。外部のデータベースのレコードへコンポーネントをリンクするために、キーフィールドのパラメータを使用することを思い出してください。これは、将来的にいつでもデータベース内のパラメータ情報の変更をコンポーネントへ反映し、それらを同期できることを意味します。更新は、回路図エディタの Tools メニューから Update Parameters From Database コマンドを使用して実行します。   

二重同期 – DBLib/SVNDBLib と DBLink

配置されたパーツの多くが DBLink ファイルを使用して外部のデータベースへリンクされている設計プロジェクトがあるかもしれません。設計変更で回路を追加(データベースライブラリ機能を使用してコンポーネントを配置)するかもしれません。DBLib/SVNDBLib ファイルは別の外部のデータベースとリンクできます。   
Update Parameters From Database コマンドを使用した時、配置されたコンポーネントのパラメータは、リンクしている方法に関係無くデータベースを介して確認され、Select Parameter Changes ダイアログで表示されたパラメータの相違を検出します。 
同じデータベースフィールドが DBLink と DBLib/SVNDBLib ファイルで一致条件として使用されている場合、DBLink ファイルでリンクされたデータベースが最初に検索され、次に DBLib/SVNDBLib でリンクされたデータベースが検索されます。コンポーネントが両方のデータベースにある場合、一致させ誤った外部のレコードから更新できます。  

データベース情報を直接、BOM へ追加 

 
従来は、Bill of Materials (BOM) のソース情報は回路図に配置されたコンポーネントのパラメータ情報から取り入れられました。しかし、DBLink ファイルを使用して、配置されたコンポーネントを外部のデータベースへリンクしている場合、BOM ジェネレーターは、デザインパラメータとしてコンポーネントへ追加されていない他のレコード情報を抽出できます。 
Report Manager を使用して Bill of Materials レポートを設定している時、Include Parameters from Database オプションを有効にします。このオプションは、デザインで 1 つ、または複数のコンポーネントが外部のデータベースへリンクされている場合のみに利用できます。パラメータリストの  アイコンは、外部のデータベースにリンクしている回路図に配置した 1 つ、または複数のコンポーネントのパラメータを識別するために使用します。 

図 19. 外部のデータベースにのみ存在するコンポーネント情報を追加。 
You are reporting an issue with the following selected text and/or image within the active document: