Product Logo

SMTPit Pro

Next Generation Email plug-in

Send Attachments

Introduction

There are several different ways to attach files in SMTPit Pro. This example uses the “SMTPit_SetAttachment” function to attach files via file paths and/or container fields. To select a file to send, click the “Attachments” field name, and the selected file path will be inserted into the Attachments field. If you would like to send an attachment from the container field, click the “Container” field name to insert a file into the container field.
Send Attachments example database

Download Example File

FileMaker 7–11 Example

FileMaker 12 Example

Settings

Before you can send email from this database, you will need to enter a few settings. At bare minimum, you will need to enter your email host. The default host port is 25, but you may need to change this depending on your email server. If your email server requires authentication, you will need to choose an authentication type and enter your username and password. If your email server requires an SSL connection, you can set the SSL field to the correct SSL type. If you are unsure of which type to use, try both to see which works.

SMTPit Pro will always return information back to you when you make a function call. You can also get a transcript of of the interaction between SMTPit Pro and your mail server by setting the field “Get Transcript” to true.

All of the fields mentioned above are used in various calculations throughout the example database. This approach allows the database to be portable in a sense because the database can be moved to a different computer without losing the settings.

Another approach for storing settings is to use the default values in the SMTPit Pro configuration dialog. In the configuration dialog you can add default headers and footers, and other various settings. These preferences will be stored on your computer only, so if you move a database to a different computer, you will need to visit the preferences dialog to enter your settings. There are advantages to using both methods, and it will be up to you to decide which one will fit your needs.

Need help? Don’t know what to use as your Settings or getting errors when trying to send?
Take a look at this article.

Access the Plug-in

When using plug-ins (not just ours), they do not add new script steps, but instead add new functions that are available in the calculation engine.

To see a calculation that tells the plug-in what to do, go to the “Scripts” menu, and choose “Manage Scripts” or “ScriptMaker”. Once in Manage Scripts/ScriptMaker, double click on the “Send” script. Note that we are using the “Set Field” script step which consists of two settings. The “Specify target field” button allows you to choose which field you want to set. In our case we want to set the “Result” field. The second specify button is where the SMTPit Pro calculation exists. Click this button to see the calculation used to tell the plug-in what to do.

In this calculation, the plug-in is accessed using the “SMTPit_FunctionName” functions. There are many functions allowing you to do different things such as set the To address, Subject, and etc. For a complete listing of the functions available, see the Functions tab. You can also access the functions in a “Specify Calculation” window by clicking the “View” menu, then selecting “External Functions”, and then scrolling through the list until you find the plug-in name.

Send Script

This script is a basic SMTPit Pro calculation with a couple additions.

First, the “SMTPit_SMTPit_SetAttachment” function is used to add the files from the “Attachments” field.

SMTPit_SetAttachment( Email::Attachments ) & “¶” &

Next, the “SMTPit_SMTPit_SetAttachment” function is called again to add the file from the “Container” field.

SMTPit_SetAttachment( Email::Container ; SMTPit_Append ) & “¶” &

Notice the use of the “SMTPit_Append” parameter in the second call to the “SMTPit_SetAttachment” function. This parameter means we are appending the file from the “Container” field to the existing list of attachments in the plug-in. If we left this parameter out, the second call to “SMTPit_SetAttachment” would overwrite any attachments set in the first function call.

View Results

This example has a Send Result field where the Results are shown. This is where the plug-in can give you feedback on what it is doing. If an error occurs, it will report the error in the results field which can help you fix any issues you may be having. It will also report its successes so that you know everything is going as planned. If you have “Get Transcript” set to true on the settings layout, you will also see the interaction between SMTPit Pro and your mail server in the Result field.

Need help? Getting errors when trying to send?
Take a look at this article.

How to recreate in your solution

To add an attachments to your own solution, you will need to use the “SMTPit_SetAttachment” function. To reference the attachment(s), you can use a container field with a file in it, a path in a field, a path in a variable, or a path directly in the calculation. For example:

SMTPit_SetAttachment( MyDB::MyContainerField )

The “MyDB::MyContainerField” field would contain either a stored or referenced file.

SMTPit_SetAttachment( “/Docs/Prices.doc” )

This example would send the “/Docs/Prices.doc” file.

SMTPit_SetAttachment( MyDB::TextField )

In this example, the MyDB::TextField field would contain a return delimited list of paths to the attachments.

SMTPit_SetAttachment( MyDB::TextField ) SMTPit_SetAttachment( MyDB::MyContainerField ; SMTPit_Append ) )

Finally, this example would attach files with file paths in the “MyDB::TextField” field as well as the file in the “MyDB::MyContainerField” field.