- Aligni API token (API access granted by your site administrator)
- Windows 7, Windows 10
- Database: SQLite, MS Access, ODBC (32-bit version required for Replicator)
- Database: SQLite, MS Access, ODBC (64-bit version may also be required for consumer applications)
- Version 1.3.0 – Provide incremental item update for faster updates. Fix defect with description field for items with associated images.
- Version 1.2.1 – Prevent database errors by truncating long field values if the target database doesn’t support them.
- Version 1.2.0 – Behind the scenes update to use the most recent APIs.
- Version 1.1.5 – Additional database support to Replicator. SQLite and MS Access are directly supported in addition to many other databases via generic OLE and ODBC connection strings. While this update has implications that broaden support for all applications, the most notable improvement is for Altium Designer 2018 which requires changes for 64-bit applications.
In order for users to retrieve data via Replicator, they need to have the following permissions:
- View Suppliers
After installation, Replicator is setup to start automatically when you login. It will appear in your system tray as shown below. You can click on the tray icon to see Replicator status, change settings, or initiate a synchronization.
Settings for Replicator are available by clicking on the tray icon and selecting “Preferences” from the drop down menu. In the settings dialog, setup should be straightforward:
- Local database type – Select an option based on the requirements of the software you want to access the local database. Options are:
- Microsoft Access
- OLE DB
- Database path (MS Access and SQLite) – Enter the full filesystem path and filename where you want the database file stored.
- Connection string (OLE DB and ODBC) – Enter the complete connection string to the database. Consult your database manual for more information.
- Aligni URL – This is the address for your Aligni site. You can enter either the subdomain (mycompany) or the full site URL (
- API Key – This is the API key to access your account. Your site administrator can provide this for you. Please see the Aligni API Documentation for more information about the API key.
Once these parameters are set, Replicator will test them using your network connection. If successful, you can accept the changes and Aligni will create and synchronize your database.
Replicator supports Microsoft Access databases directly using the OLE DB Microsoft Access provider (“Jet”). No additional drivers are required and support is built into Windows 7 and Windows 10.
Replicator also supports SQLite 3 using ODBC. The SQLite ODBC driver is required and may be downloaded from the SQLite ODBC Driver page. There are 32-bit and 64-bit versions of this driver. You will need to install the 32-bit driver as Replicator operates as a 32-bit application. You may also need to install the 64-bit driver if consumer applications require a 64-bit driver. Note: The SQLite ODBC driver is not an Aligni product and is not supported by Aligni.
Replicator can also use an OLE or ODBC connection string to communicate with your database. This support is expected to work with other standard-compliant databases such as Microsoft SQL Server PostgreSQL via ODBC, although this has not been tested. Consult your database manual for connection string information and other details.
Note that in some cases, the target database is unable to fit the full contents of an Aligni field value into the target. Aligni will truncate this content rather than throw an error which would make the import unusable. This generally only happens for some field values that are more than 255 characters.
The installation includes a small command-line executable called AligniReplicatorSync.exe. This executable can be used to initiate the replication process at any time from a script or other automated task.
Example: Altium Designer
Altium Designer can work with a local database to allow schematic placement of components from your database. Doing so provides a vital linkage from your CAD design and components in your database. Later, when you export the bill of materials (BOM) from Altium, it will readily import and match parts so that costing and material resource planning (MRP) activities can take place immediately.
There are a number of ways to configure Altium symbol and footprint databases. Please consult the Altium Designer documentation for more details than we present here.
Database Driver Requirements
Recent versions of Altium Designer require a 64-bit ODBC driver. Make sure you have the 64-bit SQLite ODBC driver installed before proceeding.
Creating the Database Link (Altium Designer 2018 and Later)
Altium uses a Database Link project to store details about the link to your database. You create a new database link project by selecting File → New → Library → Database Library in Designer.
- Install the SQLite ODBC Driver linked above.
- Select Use Connection String as the connection source. The following connection string should work for SQLite: Provider=MSDASQL.1;Persist Security Info=False;Extended Properties=”Driver=SQLite3 ODBC Driver;Database=c:\work\AltiumLibrary\aligni.sqlite”
- Select Single Key Lookup under Field Settings and choose the partnumber database field to map to part parameter Partnumber. This option tells Altium how to find the part’s database entry from the part parameters.
Design Parameter Mapping
When Altium associates a part with a database row, it pulls certain information from that row to define design parameters.
By configuring the database link, you tell Altium the specific behavior you want for each database column. For example, you can specify which design parameters to add, update, or remove when you perform a database update. You also specify which design parameters should be visible on the schematic sheet when added to your design.
In the example shown to the right, we’ve extracted the Manufacturer, Manufacture P/N, partnumber, Tolerance, Value, and ValueFloat from the database. We display the Value since it is the more human-readable format for value.
Altium has some special design parameters that serve a more functional role in your Altium project. A few of these are explained below. The Altium documentation has a more in-depth discussion of these parameters. The Altium Database Column is the column name we’ve provided in our example. If preceded by “x_”, it means that this represents custom parameter defined for the site.
|ALIGNI DATABASE COLUMN||ALTIUM DESIGN PARAMETER||DESCRIPTION|
|x_schematic_symbol||[Library Ref]||A custom parameter to define the schematic symbol for a part. Altium will use this to select the schematic symbol from your library.|
|x_pcb_footprint_1||[Footprint Ref]||A custom parameter to define footprint #1 used for a part. Altium will use this to provide this footprint as an option for the part.|
|x_pcb_footprint_2||[Footprint Ref 2]||A custom parameter to define footprint #2 used for a part. Altium will use this to provide this footprint as an option for the part. Any number can be specified, but you’ll want to map your custom parameters to the Altium footprint references in the same order.|
|value_text||Value||This is a basic Aligni parameter for the value of parts such as resistors and capacitors. We’ve instructed Altium to add to the design and also make visible. A Deesign Parameter will be added and that parameter will be displayed on the schematic sheet.|
|x_min_operating_temp||x_min_operating_temp||This is custom Aligni parameter that we’ve chosen not to translate to the Altium design parameters.|
Once your database link is setup, you can pick parts directly from your replicated database within the Altium Library panel.
Altium allows you to sort or group based on columns you’ve chosen, so finding a part is usually pretty straightforward. When a part is selected, the schematic symbol and available footprints are populated and displayed. Altium knows which symbol to reference based on the [Library Ref] linkage. Altium knows which footprints to list based on the [Footprint Ref] linkage(s).
The Altium library search also works with database parts and allows you to search by any of the available database columns. In the example on the right, a search is being performed on the “value_text” field.