Claris FileMaker Barcode Plug-In User Manual

This is the user manual for the 32-bit Native Generator Plug-in, an older version of this product. When using FileMaker versions 12 and up, IDAutomation recommends using the latest version that implements the native generator as a custom function.

IDAutomation is a Claris Marketplace partner Buy License Download Demo Support

Overview and Compatibility

This product is a complete FileMaker Plug-In Extension that creates barcodes without any other dependencies. The plug-in provides formulas, that when displayed in a report, create a barcode from an already installed system font such as Arial or Times New Roman. Once installed, no other components or fonts need to be installed to create barcodes; it is the complete barcode generator provided as a single redistributable plug-in file.

Compatibility and Requirements
Application Compatibility FileMaker 7 and above
OS Compatibility Macintosh OS X or Microsoft Windows 95 or greater, including 7 and 8 (32 and 64-bit).
Symbology Compatibility Code 128 (Sets A, B, C, and Auto), Code 39, Codabar, GS1-128, Interleaved 2 of 5, and MSI.
Minimum System Requirements 500 MHZ Processor, 128MB RAM, 5 MB available hard drive space
Intended Implementer FileMaker Database and Application Developers;
End users and non-developers may find it easier to use IDAutomation's Barcode Fonts for FileMaker.

* This package does not support UPCA, UPCE, EAN13, or EAN8 barcodes because of the required OCR text characters that must appear below this barcode type. If these barcode symbologies are required, the UPC/EAN Barcode Font Advantage is available as a separate purchase.

Barcode Integration Tutorial

Installing the Native Barcode Generator is a fairly easy process. If problems are encountered with this tutorial, IDAutomation recommends referring to the sample database included in the package.

  1. Extract the files from the Native Barcode Generator package.

  2. Install the plug-in into the FileMaker Extensions folder:
    • Microsoft Windows Systems: Copy IDAutomationNat.fmx file to the 'Extensions' subfolder of the FileMaker folder.
      For example: "C:\Program Files (x86)\FileMaker\FileMaker Pro 11 Advanced\Extensions"
    • Mac OS X: Drag the IDAutomationNat file to the 'Extensions' folder inside the FileMaker folder.
  3. If FileMaker is running, shut down and restart FileMaker. Choose Edit - Preferences - Plug-in. Choose the Plug-Ins tab to ensure the IDAutomationNat plug-in is enabled.
    Ensure IDAutomationNat Plugin is enabled.
  4. Open the database and choose File - Manage - Database. For the field name enter IDAutomationBC1 (or another descriptive name); for the field type, choose Calculation and choose Create.
    Creating the FileMaker barcode field
  5. In the Specify Calculation form, choose External Functions from the view of functions and select the function beginning with IDAuNat that is for the barcode type needed. If it is uncertain what type of barcode is needed, IDAutomation suggests using Code 128. Place the field that is to be encoded in the barcode as the parameter in the function. Change the Calculation Result to Text and choose OK.
    Ensure the Calculation Result is Text.
    Optional: The parameter may be changed to a formula that appends text to a field or combines multiple fields. For example:
    IDAuNat_C128( "PREFIX" & Field1 )
    or IDAuNat_C128( Field1 & "," & Field2 )

  6. Open the form or report in Layout Mode. If the new IDAutomationBC1 does not appear at the bottom of the form automatically, choose Insert - Field and select the field named "IDAutomationBC1" from the list of fields and choose OK.
    Insert Barcode Field
    After the field appears on the form, the edges may need to be sized so the barcode can fit within it.
    NOTE: If this field is not large enough, the barcode will not display correctly.

  7. Click on the field and open the Inspector Window, if not already open by going to View - Inspector:
    • Change the font to Arial or Times New Roman and change the Font Size to 3 points.
      Use the Arial Font.
      Because the font drop-down box does not contain small sizes, the size must be manually typed in. The font size determines the X Dimension, or the width of the barcode, which may be changed as necessary.
    Point Size Approximate X Dimension
    2 08 Mils
    3 12 Mils
    4 16 Mils
    5 20 Mils
    6 24 Mils
    7 28 Mils
    8 32 Mils

    • Still, in the Inspector Window, choose Paragraph and change the Line Spacing Height to 0.65 lines, and change the Alignment to Center.
      Set Line Spacing
  8. Optional: If a text interpretation of the barcode is needed, it is suggested to place the appropriate field directly above or below the field that will contain the barcode.
    Placing the text interpretation field above the barcode.
  9. Save and view the form or report. Verify that the barcode symbol is being created properly. In some cases, horizontal lines may appear in the barcode because of low screen resolution. However, the printed barcodes should be accurate without any visible lines. If a scanner is needed to verify printed barcodes, IDAutomation offers several affordable USB barcode scanners.
    Barcode result on the FileMaker Report.

Creating GS1-128 (UCC/EAN-128) Symbols

IDAutomation includes the capability in this product to create barcodes and text for GS1-128 (UCC/EAN128) symbols with the built-in ApplyTilde feature. The following describes the changes required in the Barcode Integration Tutorial to implement GS1-128. This GS1-128 symbol example is created from 18 digits of numbers in the GS1DataField field.

  • Enable the ApplyTilde option in the calculation formula and add in the application identifiers with tilde commands. The result line should be similar to the following:

    IDAuNat_C128( "~202" & GS1-DataField & "|12|1" )
  • If it is desired to place parenthesis in the correct locations of the text interpretation, the IDAu_Code128HR function may be used for the IDAu plugin as a calculated field. For example:

    IDAu_Code128HR( "~202" & GS1-DataField )
  • When ApplyTilde is enabled, a GS1 MOD10 check digit may also be calculated. For example, a GS1-128 symbol with 17 digits of numbers in the GS1DataField field could be created with the following formula:

    IDAuNat_C128( "~202" & GS1-DataField & "~m17|12|1" )

    GS1 Databar Example

Functions of the Native Barcode Generator

DataToEncode is the only required parameter in the functions provided. Optional parameters are separated with the pipe "|" character. When one optional parameter is used, all must be specified.

Example Formulas
Code 128 barcode with default settings: IDAuNat_C128( Field1 )
Code 128 barcode, with height = 12: IDAuNat_C128( Field1 & "|12|1" )
Code 3 of 9 barcode, height = 12, N Dimension =3 and Check Digit enabled: IDAuNat_C39( Field1 & "|12|3|1" )
Code 128 barcode created for GS1-128, height = 18 and ApplyTilde enabled: IDAuNat_C128( "~202" & Field1 & "|18|1" )

Barcode Functions  NOTE: When one optional parameter is used, all must be specified.
IIDAuNat_C128 (DataToEncode|optional BarHeight|optional ApplyTilde)
IDAuNat_C128a (DataToEncode|optional BarHeight)
IDAuNat_C128b (DataToEncode|optional BarHeight)
IDAuNat_C128c (DataToEncode|optional BarHeight)
IDAuNat_C39(DataToEncode|optional BarHeight|optional N_Dimension|optional IncludeCheckDigit)
IDAuNat_Codabar(DataToEncode|optional BarHeight|optional N_Dimension|optional startchar|optional stopchar)
IDAuNat_I2of5(DataToEncode|optional BarHeight|optional N_Dimension|optional IncludeCheckDigit)
IDAuNat_MSI(DataToEncode|optional BarHeight|optional N_Dimension|optional IncludeCheckDigit)

Description of the Properties of the Functions:


This is a string value that represents the data being encoded.


The height of the barcode. Default =6. The approximate height is determined with the following formula:
  Height in Inches = (Font Size) * (BarHeight) * 0.012
  Height in CM    = (Font Size) * (BarHeight) * 0.03


Determines the width of the wide bars, which is a multiple of the X dimension. Valid values are 2 and 3. The default is 2.


Determines whether a check digit should be automatically calculated and included for the DataToEncode. Valid values are 0 (false) and 1 (true). Default = 0.


If ApplyTilde is set to 1 (true), the tilde will be processed and allow the following options:
  • ASCII characters: The format ~ddd may be used to specify the ASCII code of the character to be encoded.
    • For example, if entering the following text in the Data field: 66~02977 it will actually encode 66GS77 where GS is a delimiter ASCII 29 character.
    • Other commonly used ASCII codes are ~009 for a tab and ~013 which is a return function. To encode other functions, please refer to IDAutomation's ASCII chart.

  • Encoding GS1-128 (UCC/EAN-128) AIs: To encode alpha-numeric UCC/EAN128, the character must be set to "AUTO" for automatic. Then, ASCII 202 or character Ê is entered as the FNC1 before each AI, and the required start C is included automatically.
    • For example, the GS1 number of (8100)712345(21)12WH5678 should be entered as: ~2028100712345~2022112WH5678.
      • In most cases, the AIs will be properly represented in the human-readable text. If the parenthesis is not around the correct number for the AI, enter the following extended ASCII character as the FNC1 for the correct number of digits in the AI:
          ASCII 212 = 2 digits                ASCII 213 = 3 digits
          ASCII 214 = 4 digits                ASCII 215 = 5 digits
          ASCII 216 = 6 digits                ASCII 217 = 7 digits
        For example, to encode (1277)56, enter ~214127756. For more information, please refer to the UCC/EAN 128 section of IDAutomation's Code 128 FAQ

  • Create a Mod 10 Check digit: To create a Mod 10 check digit for xx number of characters, add the following to the DataToEncode: ~mnn (where nn is a 2-digit number representing the number of characters preceding the tilde in which to base the Mod 10 calculation).
    • The additional MOD 10 check digit is commonly used in GS1 (UCC/EAN) barcode types. For example, setting the DataToEncode property to ~2024021234567890123456~m16 will cause a mod 10 check digit to be created based on all 16 characters before the tilde. The human-readable text and scanned data will display as (402)12345678901234560. The final 0 is the mod 10 check digit and replaces ~m16.

  • FNC2: When necessary, the FNC2 character may be inserted into the DataToEncode string by using ASCII 197. For example; ~1978012349091.
    • IDAutomation's SC5USB Scanner can be programmed to hold the barcode starting with the FNC2 in memory and only transmit it to the computer after scanning a barcode containing the FNC1.

Technical Support

Priority phone, email, and forum support are provided up to 30 days after purchase. Additional priority phone, email, and forum support may be obtained if the Priority Support and Upgrade Subscription is active.

  • If the barcode is truncated, looks corrupted, or does not appear completely, resize or increase the width of the field.
    Corrupted barcode caused from a field that is not wide enough.
  • If the resulting symbol contains boxes instead of a barcode, it is because the process used does not completely support Unicode characters. Usually, this is caused by processes that create PDF documents.
    The resulting symbol contains boxes instead of a bar-code...
  • If horizontal lines appear in the printed barcode, check the text format and decrease the Line Spacing Height to 0.60 or less. However, it is normal for horizontal lines to appear on the screen because of low screen resolution.
  • If scanning problems are encountered with small barcode sizes, verify a printer of 300 DPI or greater is being used. An X dimension of 16 MILS or greater should be used with low-resolution thermal 203 DPI printers. IDAutomation also offers many barcode fonts that print well to low-resolution thermal printers. Additionally, verify the scanner being used is able to read small barcodes.
  • If barcodes do not scan at the default settings, check to make sure that the barcode type is enabled in the scanner and that there is sufficient white space surrounding the barcode. Additional solutions are provided in the Barcode will not scan KB article.
  • Additional problems and solutions are provided at IDAutomation's barcode font troubleshooting site and by searching resolved public forum threads