Topics   All   MacOS (Only)   Windows (Only)   Linux (Only, Not)   iOS (Only, Not)  
Components   Crossplatform Mac & Win   Server   Client   Old   Guides   Examples
New in version: 9.0   9.1   9.2   9.3   9.4   9.5   10.0   10.1   10.2   10.3    Statistic  


Prints a document with options.

Component Version macOS Windows Server FileMaker Cloud FileMaker iOS SDK
Printer 6.5 No Yes No No No
MBS( "Printer.Print"; Printer { ; CloseDialog; Number of Copies; Paper Format; Paper Orientation; Paper Source; Pages From; Pages To; Collate Pages; What } )   More


Parameter Description Example value
Printer The printer name to set.
Must not match exactly, just the first letters.
If empty, we use current.
CloseDialog Optional
Whether to close print dialog.
Pass 1 to close or 0 to not close.
Pass 2 to press cancel button in case you just want to learn the options.
Pass 3 to leave dialog open.
Number of Copies Optional
The number of copies.
Leave empty to not change.
Paper Format Optional
The name of the paper format.
Leave empty to not change.
Paper Orientation Optional
The paper orientation.
Pass portrait or landscape. Empty value leaves setting as is.
Paper Source Optional
The paper source.
Pass name of setting. Name doesn't need to match exactly, just first letters.
So you can pass "Man" für Manual (English) and Manuell (German).
Pages From Optional
The start number of page range.
Pass empty text for Pages From and To to select all pages.
Pages To Optional
The end number of page range.
Pass empty text for Pages From and To to select all pages.
Collate Pages Optional
Whether to collate pages.
Pass 1 to enable or 0 to disable.
Other values are ignored, so pass -1 to leave existing value.
What Optional
What to print:
Pass 0 for records being browsed.
Pass 1 for current record.
Pass 2 for Blank Record showing fields.
Default is empty (or -1) to keep current setting.


Returns OK or error.


Prints a document with options.
The plugin will show the print dialog from FileMaker, automatically set options and close dialog if requested. Sub dialog for paper is opened if paper format, paper orientation or source is passed.
The function returns before the dialog shows, so please do a script pause after calling this.

You can later call Print.ErrorLog to detect errors. If Windows ever change dialogs, features may no longer work. FileMaker may not show the print dialog if there is no record available or when debugger is open.

For Mac, please check PrintDialog.Install function.

After calling this method, you can call Printer.PaperFormats, Printer.PaperSources or Printer.PrinterNames to learn what was available.

Version 9.1 or newer allows you to pass 3 for CloseDialog parameter to leave dialog open while sub dialog is closed.

Source code sponsored by



Set Variable [$r; Value:MBS("Printer.Print"; Printer Dialog::Printer Name; Printer Dialog::Close Dialog; Printer Dialog::Number of Copies; Printer Dialog::Paper Format; Printer Dialog::Paper Orientation; Printer Dialog::Paper Source; Printer Dialog:…]
Pause/Resume Script [Duration (seconds): 2]
Show Custom Dialog ["Result"; MBS("Printer.ErrorLog")]

See also

Example Databases

Blog Entries

FileMaker Magazin

Release notes

  • Version 9.2
    • Added 20ms pause after setting copies in Printer.Print to let dialog notice the change.
    • Changed Printer.Print to only set collatePages is 0 or 1 and ignore parameter otherwise.
  • Version 9.1
    • Added CloseDialog = 3 mode for Printer.Print to keep main dialog open, but close sub dialog.
    • Fixed problem with Printer.Print picking items in popup menu if you have two similar starting entries.
  • Version 9.0
    • Changed Printer.Print to prefer selecting exact match over beginning of text.
  • Version 7.1

Created 14th November 2016, last changed 21st November 2019

Printer.PaperSources   -   Printer.PrinterCount

Feedback: Report problem or ask question.

MBS Xojo Plugins