DB Services https://dbservices.com Your FileMaker database is your business. Making it work better is ours Fri, 19 Apr 2019 14:01:30 +0000 en-US hourly 1 FileMaker Square Integration https://dbservices.com/articles/filemaker-square-integration/ Wed, 03 Apr 2019 14:00:05 +0000 https://dbservices.com/?p=10430 FileMaker Square Integration

Square is one of the most popular in-person credit card processing systems available with over 2 million sellers using square today. Using the Point of Sale API, Square allows you to easily integrate with their Point of Sale app to quickly process in-person payments from your FileMaker application on mobile devices.

What You Need

You must have a Square account and a Square Reader for all mobile devices you want to accept payment on. You will also need to have your FileMaker application hosted on a FileMaker Server, have the FileMaker Data API enabled on FileMaker Server, and enable the fmurlscript “Allow URLs to perform FileMaker scripts” and fmrest “Access via FileMaker Data API” extended privileges for all users pushing charges to Square.

How It Works

Your FileMaker application will determine the total charge to the customer and pass the transaction information to the Square POS app. The mobile device automatically opens the POS app and the charge amount is pre-populated in the transaction presented to the customer. Once the transaction is completed, the results are sent via a callback URL, which references PHP code to open your FileMaker application and pass in the results of the transaction from Square.

Creating Your Square Application

First install the Square Point of Sale app from the App Store (available on iOS and Android). Then create a Square application on your Square developer dashboard. To do this, sign in to your developer portal online and click “New Application”.

FileMaker Square Developer Portal

Next enter your web callback URL by clicking into the application you created, selecting the “Point of Sale API” tab, and entering your Web Callback URL. Square requires that we use an HTTPS URL and not an FMP URL. This URL will be a link to a PHP script that acts as an FMP URL and will reopen your FileMaker application after the Square transaction completes. It needs to include parameters to reference your FileMaker file and call the FileMaker script that will handle the response data from Square.

FileMaker Square Callback URL

Keep in mind you will have to purchase an SSL certificate for the domain you use to host your PHP code as Square requires HTTPS for Web Callback URLs.

Pushing a Transaction to Square

Now that you’ve configured your Square application in the developer portal and have hosted your PHP script on a secure web server, you can start pushing transactions to Square from FileMaker. To push the transaction to Square, you will need to call the Square app with the Square URI scheme and pass information to prepopulate the transaction in the form of a JSON object. Here is an example of the JSON object.

{
	"amount_money" : 
	{
		"amount" : "0",
		"currency_code" : "USD"
	},
	"callback_url" : "https://fm.dbservices.com/Test/SquareArticle/LaunchFMPURL.php?host=cloud.dbservices.com&database=DB_Services_FileMaker_Square_Integration&script=Square_Process_Payment",
	"client_id" : "sq0idp-mRVxvaQDqPVVacCJDPn2zg",
	"notes" : "",
	"options" : 
	{
		"supported_tender_types" : [ "CREDIT_CARD", "CASH" ]
	},
	"version" : "1.3"
}

Make sure to URL encode the JSON object and append it to the end of the URL “square-commerce-v1://payment/create?data=”. Use the Open URL script step to open the Square POS app.

One important note to remember is that Square reads the transaction amount in cents, so if you’re passing dollar values, you need to multiply them by 100 before passing them through the API.

Passing Back Transaction Results with PHP

Included in the demo file is a PHP file used to pass the Square transaction results back to your FileMaker application. This PHP code handles the JSON data passed from Square and essentially builds an FMP URL used to re-open your FileMaker application and call a script. This is how we retrieve our result data in the FileMaker script that is called by Square. An example of the result data is shown below.

{
	"client_transaction_id" : "C33DC0BB-98B4-4E7E-BB0E-9764C46E5A15",
	"status" : "ok",
	"transaction_id" : "WO873ceEC5bOO4KtzCFtaNzeV"
}

The only catch to this, is that on iOS devices, Safari will always be the browser that handles the FMP URL sent by the PHP code. Unfortunately Safari always prompts the user to open FileMaker Go and there is no way to disable this. So users will have to click “Open” or the FileMaker application won’t open. This can cause issues because the transaction could have completed or canceled and your FileMaker application wouldn’t know the difference.

Processing Payment in FileMaker

This is the easiest part of the integration. Once the PHP code opens your FileMaker application it will run the specified script. You will want to grab the data from Square and tie it to your charge record. In the demo file, we store the entire result in the response field and store the transaction ID in a transaction ID field.

Conclusion

The Square Point of Sale API allows you to quickly and easily process in-person payments on mobile devices, while linking your Square transactions with your FileMaker records. This eliminates the risk of human error while taking payment with Square. Contact us if you need help integrating your FileMaker application with Square!

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

Download FileMaker Square IntegrationDownload FileMaker Square Integration Database

Please complete the form below to download your FREE FileMaker database file.

]]>
FileMaker: A Workplace Innovation Platform https://dbservices.com/articles/filemaker-a-workplace-innovation-platform/ Fri, 01 Mar 2019 20:22:27 +0000 https://dbservices.com/?p=10343 FileMaker: A Workplace Innovation Platform

In 2018 a new report emerged to categorize software specifically made for building custom solutions for businesses. This new report labels FileMaker and similar software as “Workplace Innovation Platforms”.

Let’s take a look at what a Workplace Innovation Platform is and how can it improve your business!

What is a Workplace Innovation Platform?

FileMaker, as the leader of the Workplace Innovation Platform category, defines it this way:

“A Workplace Innovation Platform like FileMaker allows you to build custom apps to match the unique needs of your business and help to better connect your systems, processes and employees.”

G2 Workplace Innovation Platforms Grid

G2 Crowd—a business software review site—also launched a Workplace Innovation Platform report in January 2019, and they offer an objective definition and list of requirements for these types of platforms. In order to be considered a Workplace Innovation Platform on G2 Crowd, the software must meet the following requirements:

  • Provide both visual design and full-stack development tools
  • Provide collaborative application management and secure communication capabilities
  • Facilitate cross-platform availability via on-premise, cloud, or hybrid deployment
  • Provide integration tools for connecting to systems, services, and platforms
  • Provide a partner network, learning resources, marketplace, and/or user community

Additionally G2 Crowd allows for customers of different Workplace Innovation Platforms to review the software in that report, and then ranks them based on market presence and customer satisfaction. Other platforms contained in this report by G2 Crowd include Airtable, Salesforce Lightning, K2, Quick Base, and others.

As seen on the G2 Crowd grid as of Feb 2019, FileMaker, Inc. leads in both reports, and is considered the leader in the category of Workplace Innovation Platforms.

What a Workplace Innovation Platform Can Do for You

The benefits of a Workplace Innovation Platform for your business are vast. FileMaker lists 5 primary reasons to invest in a custom application in the workplace:

  1. Allows you to “escape the work rut” of tedious manual tasks
  2. “Bridges the gap” between current software used in the business
  3. Meshes your innovative ideas and expertise with your business’ software
  4. Provides the opportunity to go fully paperless
  5. Moves your business towards mobility

Additionally FileMaker conducted a State of the Custom Apps study in 2018 to find out how custom applications have impacted businesses who use them. The customers surveyed belonged to businesses of all sizes and industries, and were located in North America, Europe, and Japan.

Out of 370 FileMaker customers surveyed:

  • 93% were able to reduce inefficient tasks
  • 91% increased team productivity
  • 76% reported a return on investment (ROI)
  • 70% saw an increase in customer satisfaction

Workplace Innovation at DB

In our own words, a Workplace Innovation Platform such as FileMaker is a software platform that allows businesses of any size or industry to create a custom application that solves problems and paves the way for innovation and efficiency.

Put simply, DB Services uses FileMaker to transform and innovate the way businesses operate.

Whether it’s integrating several scattered business applications into an all-in-one solution for a company, eliminating tedious data entry, or allowing businesses to take their FileMaker solution out in the field via iPads or iPhones–we’ve done it all.

Check out our Case Studies to see just a few of the ways that DB Services has used FileMaker to innovate workflows for businesses across the country.

Conclusion

Workplace Innovation Platforms such as FileMaker can provide fantastic benefits to organizations, regardless of size, industry, or location, allowing them to transform and innovate the way they do business.

If you’re ready to see what FileMaker can do for you, contact us today for a free initial consultation!

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

]]>
FileMaker OneDrive Integration https://dbservices.com/articles/filemaker-onedrive-integration/ Tue, 05 Feb 2019 16:16:09 +0000 https://dbservices.com/?p=10280 FileMaker OneDrive Integration

OneDrive and Microsoft Office 365 is one of the most popular business software packages and services on the planet. Its reach has expanded 238% since 2014 and 81% since 2016.  And with the Microsoft OneDrive API, integrating has never been easier. OneDrive is excellent for sharing documents with other people without giving them access to your FileMaker system and allows for editing files without the hassle of downloading, editing, then re-uploading. We will walk through how to use the Microsoft OneDrive API to upload documents, list documents in a folder, and download documents, allowing your documents to be stored and shared easily in the cloud to keep your FileMaker database lean and mean.

What You Need

You must have a OneDrive account to use this article’s integration which is included in the Office 365 package. Also make sure you have admin access to your Office 365 subscription if you have a business or school user account.

Creating a Microsoft Graph Application

Make sure you a create Azure AD Tenant first if you are using a personal account and not work school account. Similar to other API integrations, you need to create an app first. Go to the application registration portal and add an app. You will be given an application ID and a new key pair that you can use to make API calls from FileMaker to OneDrive.

FileMaker OneDrive Application Registration

Managing App Permissions

Microsoft OneDrive requires that each user give the app permissions to be able to read/write data from their OneDrive. Before users can give permissions, you need to set up the default permissions on the application registration page. You’ll need one delegated permission for this OneDrive Integration:

  • Files.ReadWrite

Microsoft OneDrive Permissions For FileMaker Integration

Authenticating With Microsoft Graph

Once you have your API information, you will need to authenticate your solution with the OneDrive API. The sample file at the end of the article has the calls & web viewers that you can reference to authenticate FileMaker with OneDrive.

When the user clicks the Connect button, they will be asked to log in to their Microsoft account and approve delegated permissions for the application.

After the user logs in, a FileMaker script parses the redirected page’s URL for the client ID and auth codes that will be used for requests to OneDrive.

FileMaker OneDrive Login Screen

Making Requests And Parsing The Response

Microsoft OneDrive API supports multiple types of requests such as HTTP POST, GET and DELETE. You can perform all actions by using the native Insert from URL[] script step and giving it a valid URL and cURL options including required fields within the JSON body specified by the documentation.

Here’s a sample request body to download files from a folder. Note how the DateTime element is formatted. For more details, refer to Microsoft OneDrive documentation under the List Children Page.

-X GET https://graph.microsoft.com/v1.0/me/drive/items/E9953196A1CE2F19!28596/children?$expand=thumbnails
--header "Authorization: Bearer EwBwA8l6BAAURSN/FHlDW5xN74t6GzbtsBBeBUYAAROJk..."

The response will have an array of documents from the selected folder and will include URLs to the thumbnails so we can download those in a bit. You’ll also notice that some of the object names are prefixed by “@odata.” which will not work with FileMaker’s built-in JSON functions, because FileMaker does not allow periods in an objects name. If you need to read one of these properties, you can simply substitute the entire object to remove the prefix.

Substitute ( $response ; "@odata." ; "" )

Downloading Files

Downloading a file is relatively easy once you know a quirk of the FileMaker cURL library. By default when you try to download a file it first authenticates your call, and then redirects you to download the file. FileMaker will not follow the redirect and won’t return anything unless you include the -L or –location flag in your cURL command. Another tip is that you can pass the –output flag with a URL encoded file name when downloading, to ensure the downloaded file has the correct name.

-X GET https://onedrive.live.com/?id=E9953196A1CE2F19%2129992
--header "Authorization: Bearer EwBwA8l6BAAURSN/FHlDW5xN74t6GzbtsBBe..."
-L
--output Screen%20Shot%202019%2D01%2D14%20at%204%2E54%2E41%20PM%2Epng

Uploading Documents

Uploading files to OneDrive is a bit more difficult. OneDrive provides 2 API methods for uploading docs, one for files under 4MB and another resumable upload method for larger files. We will strictly be using the resumable upload method as it is more flexible. The first thing you need to do is to create an upload session. The documentation is not very clear on how to do this. You’ll need the folder ID you want to upload to and the filename URL encoded. When constructing the URL you’ll need colons after the folder and filename, though the documentation makes no mention of this.

-X POST  https://graph.microsoft.com/v1.0/me/drive/items/E9953196A1CE2F19!29992:/picture%2Epng:/createUploadSession
--header "Authorization: Bearer EwBwA8l6BAAURSN/FHlDW5xN74t6GzbtsBBeBUYAAQScvI1+tUkC1GcS1z+E6..." 
--header "Content-Type: application/json" 
-d { 
   "@microsoft.graph.conflictBehavior": "rename", 
   "description": "description", 
   "fileSystemInfo": { 
      "@odata.type": "microsoft.graph.fileSystemInfo" 
   }, 
   "name": "Screen Shot 2019-01-14 at 4.54.41 PM.png"
}

This will return an uploadUrl that you’ll use to actually upload the data to.

{
  "@odata.context":"https://graph.microsoft.com/v1.0/$metadata#microsoft.graph.uploadSession",
  "uploadUrl":"https://api.onedrive.com/rup/e9953196a...",
  "expirationDateTime":"2019-01-31T18:16:08.186Z",
  "nextExpectedRanges":["0-"]
}

After you have the uploadUrl you need to calculate the content range of the file so we can tell the API what bytes we are uploading. You can use GetContainerAttribute ( TABLE::container ; “fileSize” ) to get the size of the file in bytes. From there you just can determine the content range. The range starts at zero, while the total starts at one, meaning a 25-byte file will have a content range of 0-24 and a total byte size of 25, thus setting the content range to 0-24/25 is telling the API that we are uploading the entire file. To actually upload the contents of a container you’ll first set a variable with the contents of the container and then you’ll use that variable with the -T or –upload-file flag.

-X PUT https://api.onedrive.com/rup/e9953196a...
--header "Content-Range: bytes 0-24/25" 
-T $data

Displaying Files and Folders in FileMaker

One thing you’ll want to keep in mind when working with the API is that you’ll need to store a representation of all the files and folders as records in your FileMaker solution. In the sample file, I have a file table to store the document names, OneDrive ID, size, etc. You might also want to include a container field to store a thumbnail of your files as well, which are quite small at around 100px by 100px. OneDrive will also generate thumbnails of file types FileMaker doesn’t natively support such as Word and PowerPoint.

FileMaker OneDrive List Files

Conclusion

The Microsoft OneDrive API can help keep your database size down, make sharing files easier, and allowing you to edit files without downloading and re-uploading to FileMaker. Contact us if you need help integrating your FileMaker solution with OneDrive!

DownloadDownload FileMaker OneDrive Integration Database

Please complete the form below to download your FREE FileMaker database file.

 

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

]]>
FileMaker Adobe InDesign Integration https://dbservices.com/articles/filemaker-adobe-indesign-integration/ Wed, 09 Jan 2019 14:18:02 +0000 https://dbservices.com/?p=10212 FileMaker Adobe InDesign Integration

Wouldn’t it be great to save time and money by automating repetitive Adobe InDesign processes and eliminating double data entry? With FileMaker, you can easily create XML which can be imported directly into InDesign. With a bit of additional development, you can even automate the process of placing text and photos directly on the page for designs that rarely need adjustments. We will show you how to use FileMaker and Adobe InDesign to make elegant designs with just a few clicks.

Using XML

Adobe InDesign has the ability to directly import XML to create individual parts which can be easily manipulated on your publication. Using FileMaker you can create this XML with a script that loops through the items that you wish to display on your InDesign document and creates opening and closing tags that separate the individual items.

<NewsItem SIZE="Half Page Ad - Bottom"TMPL="Half Page Ad - Bottom" TYPE="article">
<Headline>Lorem ipsum</Headline>
<Body>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut feugiat.</Body>
</NewsItem>

Each item, when imported into InDesign, will then be able to be dragged and dropped directly onto the page and resized or edited to fit your needs.

Using FileMaker Templates

Using FileMaker you can create templates to predetermine the position of the items you intend to display. With relatively simple Javascript, you can iterate through the items that you have imported into InDesign and place the items in the publication based on the templates you created in FileMaker.

FileMaker InDesign Javascript for Placement

This eliminates the need to do any major rework for repetitive designs, such as magazine pages or basic flyers.

Using Third Party Integration Methods

There are products that can be purchased which can also make integrating with InDesign even simpler. EasyCatalog by 65bit can be used for cataloging a database. This product links directly to FileMaker and can easily synchronize the information on the page with the information from FileMaker, keeping your document up to date.

65 Bit EasyCatalog
Photo Courtesy of www.65bit.com

InData and Xdata by emSoftware allows you to make templates with bracketed text to use as placeholders for any kind of data. You can then import the data with a single click and InData/Xdata will run through your FileMaker database to create InDesign files populated with the accurate information.

EmSoftware InData•Xdata

Photo Courtesy of www.emsoftware.com

Conclusion

Adobe InDesign can easily use XML made straight from your FileMaker solution! With a little bit of scripting you can make complex XML which can be imported directly into InDesign to save you time and money by automating the tedious parts. If you need further assistance or are interested in integrating FileMaker with Adobe InDesign, contact us for a free consultation.

DownloadDownload FileMaker Adobe InDesign Integration Database

Please complete the form below to download your FREE FileMaker database file.

 

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

]]>
FileMaker Outlook Calendar Integration https://dbservices.com/articles/filemaker-outlook-calendar-integration/ Mon, 17 Dec 2018 13:51:28 +0000 https://dbservices.com/?p=10113 FileMaker Outlook Calendar Integration

Outlook and Microsoft Office are one of the most popular business software packages and services on the planet, with Outlook.com alone boasting over 400 million users in 2018. And with the Microsoft Graph API, integrating with Outlook and its calendar has never been easier. In this article we will walk through how to use the Microsoft Graph API to automatically create events in Outlook Calendar using FileMaker, streamlining event and scheduling management in your FileMaker solution by eliminating double data entry.

What You Need

You must have Office 365 to use this article’s integration, as the Microsoft Graph API does not support Outlook hosted on Exchange Server. Also make sure you have admin access to your Office 365 subscription if you have a business or school user account.

Creating a Microsoft Graph Application

Make sure you create Azure AD Tenant first if you are using a personal account and not work school account. Similar to other API integrations, you need to create an app first. Go to the application registration portal and add an app. You will be given an application ID and a new key pair that you can use to make API calls from FileMaker to Outlook Calendar.

Microsoft Graph Application Registration

Managing App Permissions

Microsoft Graph requires that each user give the app permissions to be able to push and pull data to and from their Outlook Calendar. Before users can give permissions, you need to set up the default permissions on the application registration page. There are two types of Microsoft Graph permissions: delegated permissions and application permissions. For purpose of this article, we will be using delegated permissions to talk to Outlook Calendar as a user instead of as an application.

For this Outlook Calendar Integration you will need to add the following delegated permissions:

  • Calendars.ReadWrite
  • Calendars.ReadWrite.Shared
  • User.Read

Microsoft Graph Permissions

Authenticating with Microsoft Graph

Once you have your API information, you will need to authenticate your solution with the Microsoft Graph API to connect to Outlook Calendar. The sample file at the end of the article has the calls & web viewers that you can reference to set up initial authentication between Outlook and your new Graph application.

When the user clicks Connect button, they will be asked to log in to their Outlook account and approve delegated permissions for the application.

After the user logs in, a FileMaker script parses the redirected page’s URL for the client ID and auth codes that will be used for requests to Outlook.

Making Requests and Parsing the Response

Microsoft Graph API supports multiple types of requests such as HTTP POST, GET and DELETE. You can perform all actions by using native the Insert from URL[] script step and giving it a valid URL and cURL options including required fields within the JSON body specified by the documentation.

Here’s a sample request body to create a calendar event. Note how the DateTime element is formatted. For more details, refer to Microsoft Graph’s properties under the event page.

{
	"End" : 
	{
		"DateTime" : "2018-12-12T11:00:00",
		"TimeZone" : "Eastern Standard Time"
	},
	"Start" : 
	{
		"DateTime" : "2018-12-12T10:00:00",
		"TimeZone" : "Eastern Standard Time"
	},
	"Subject" : "Test 123"
}

If you make a successful request, the API will return a JSON-encoded body. You can check if you encountered any errors by looking at the following function after the Insert from URL[ ] step:

Get ( LastExternalErrorDetail )

This function will return 200 on success; otherwise the API encountered an error. If your call was successful, you’ll get response a JSON-encoded response body like below with event ID and change key that you will need to use when updating events:

{
	"@odata.context" : "https://graph.microsoft.com/v1.0/$metadata#users('gmoon%40dbservices.com')/calendar/events/$entity",
	"@odata.etag" : "W/\"eyoqZr4V6UOE23scd9kKdQABYJFSxw==\"",
	"attendees" : [],
	"body" : 
	{
		"content" : "",
		"contentType" : "text"
	},
	"bodyPreview" : "",
	"categories" : [],
	"changeKey" : "eyoqZr4V6UOE23scd9kKdQABYJFSxw==",
	"createdDateTime" : "2018-12-11T18:26:21.48905Z",
	"end" : 
	{
		"dateTime" : "2018-12-12T17:00:00.0000000",
		"timeZone" : "Eastern Standard Time"
	},
	"hasAttachments" : false,
	"iCalUId" : "040000008200E00074C5B7101A82E00800000000525905047F91D4010000000000000000100000002EF55A9CBBF9F8429AA5DF86AE8FB2CF",
	"id" : "AQMkADAwATM3ZmYAZS0wYTI1LWI1N2ItMDACLTAwCgBGAAADVUTIWkB8vk_xO5-ko1YImAcAeyoqAGa_FelDhNt7HHfZCnUAAAIBDQAAAHsqKgBmvhXpQ4Tbexx32Qp1AAFghoJ2AAAA",
	"importance" : "normal",
	"isAllDay" : false,
	"isCancelled" : false,
	"isOrganizer" : true,
	"isReminderOn" : true,
	"lastModifiedDateTime" : "2018-12-11T18:46:23.4155607Z",
	"location" : 
	{
		"address" : {},
		"coordinates" : {},
		"displayName" : "",
		"locationType" : "default",
		"uniqueIdType" : "unknown"
	},
	"locations" : [],
	"onlineMeetingUrl" : null,
	"organizer" : 
	{
		"emailAddress" : 
		{
			"address" : "example@outlook.com",
			"name" : "Gayoung Moon"
		}
	},
	"originalEndTimeZone" : "Eastern Standard Time",
	"originalStartTimeZone" : "Eastern Standard Time",
	"recurrence" : null,
	"reminderMinutesBeforeStart" : 15,
	"responseRequested" : true,
	"responseStatus" : 
	{
		"response" : "organizer",
		"time" : "0001-01-01T00:00:00Z"
	},
	"sensitivity" : "normal",
	"seriesMasterId" : null,
	"showAs" : "busy",
	"start" : 
	{
		"dateTime" : "2018-12-12T16:00:00.0000000",
		"timeZone" : "Eastern Standard Time"
	},
	"subject" : "4 PM Test",
	"type" : "singleInstance",
	"webLink" : "https://outlook.live.com/owa/?itemid=AQMkADAwATM3ZmYAZS0wYTI1LWI1N2ItMDACLTAwCgBGAAADVUTIWkB8vk%2BxO5%2Fko1YImAcAeyoqAGa%2BFelDhNt7HHfZCnUAAAIBDQAAAHsqKgBmvhXpQ4Tbexx32Qp1AAFghoJ2AAAA&exvsurl=1&path=/calendar/item"
}

Things to Think About

  • It’s important to note that if you change permissions on the application registration page, users will have to reauthenticate and give the application those new permissions. Same thing needs to happen if you delete and regenerate your application password for whatever reason.
  • Some users won’t have permission to allow application access to their Outlook calendar. Make sure your 365 administrator gives this to each of them before trying to sync calendar events.
  • If you want to display a personal calendar in FileMaker via a web viewer, users will need to log in each time that specific layout refreshes. We recommend that you use a public calendar that anyone can see to avoid the need to constantly relog in.
  • You will need to refresh your access token at least once every hour, as the token expires after 60 minutes. We recommend that you error trap for HTTP code 401 after a request, refresh the token if there’s a 401, and then retry the original request.

Conclusion

The Microsoft Graph API can help streamline your event and scheduling workflow by giving you the ability to sync your Outlook calendar flawlessly with your FileMaker solution. Contact us if you need help integrating your FileMaker solution with your Outlook Calendar!

DownloadDownload FileMaker Outlook Calendar Integration Database

Please complete the form below to download your FREE FileMaker database file.

 

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

]]>
Mail Merge with FileMaker https://dbservices.com/articles/mail-merge-with-filemaker/ Wed, 14 Nov 2018 15:03:19 +0000 https://dbservices.com/?p=10013 Mail Merge with FileMaker

If you currently hand type your business’s envelopes, letters, and other complex documents like proposals and legal forms, you would greatly benefit from using mail merge.

Mail merging, the process of filling in a template document with records from a data source, saves countless hours of double data entry and reduces human error; instead of typing out each recipient’s information, Microsoft Word (or another similar word processor) automatically does all the work for you. In addition it is possible to create mail merges with records from your FileMaker system to save even more time.

Basics of Mail Merge

To create a mail merge, you need two things: a template and a data source. In this example, we will be using Microsoft Word to create a template, and FileMaker as the data source. If you do not have Microsoft Word, there are plenty of other free word processors out there that are able to perform mail merges.

Exporting FileMaker Records

In order to prepare your FileMaker records for mail merging, you need to export them as a .mer file. To export a merge file:

  1. In your FileMaker system, get into the found set of records you would like to merge with your template.
  2. Click “File” > “Export Records,” change the file type to “Merge,” and choose where you want to save your file.
    FileMaker Export Records Dialog
  3. In the “Specify Field Order for Export” dialog, chose the fields you want to be able to merge in your template file and click export.

Your mail merge data source can be other file types, but a .mer file is certainly the easiest to create from FileMaker.

Creating Your Mail Merge Template

Because mail merging has been around for a while, many people will already have their templates ready. In case you don’t, however, the process is very straight forward:

  1. Create a document with your preferred word processor.
  2. Choose the .mer file that you exported earlier as your data source. To do this in Microsoft Word 2016, click “Mailings” > “Select Recipients” > “Use an Existing List” and find your .mer file.
  3. Place fields in the template where necessary. In Word, click “Mailings” > “Insert Merge Field” and select the field you wish to place in the document.
  4. If you wish to view what your filled out template looks like in Word, click “Mailings” > “Preview Results”.

Now your template is all set for merging! You can reuse this template for later mail merges. The image below shows what your Word document will look like before and after the mail merge respectively.

Mail Merge with FileMaker Before and After

Things To Note

  • There are more ways to make the process even easier! We have created a FileMaker file that allows users to export contact records and a mail merge template with a few simple clicks.
  • If you change the name of a field in FileMaker that is also used in your mail merge, you will need to update the corresponding variable in your template file.
  • If your solution requires more automation, you can use FileMaker plugins like 360Works Scribe or MonkeyBread Software to automatically generate documents without the need for exporting records.
  • You can also use AppleScript instead of plugins to automatically generate documents out of FileMaker, but you will still need to export the .mer file and have AppleScript automatically run the mail merge in Word or a similar word processor.

Conclusion

Using mail merge with FileMaker is a highly efficient technique at generating documents as simple as letters to as complex as proposals or legal forms. Feel free to contact us if you would like assistance generating documents from your FileMaker system!

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

Download FileMaker HubspotDownload Mail Merge with FileMaker Database

Please complete the form below to download your FREE FileMaker database file.

]]>
FileMaker Walmart Integration https://dbservices.com/articles/filemaker-walmart-integration/ Wed, 17 Oct 2018 14:41:41 +0000 https://dbservices.com/?p=9895 FileMaker Walmart Integration

Walmart is the largest retailer in the world with $485.9 billion in total revenue in 2017, and reaches over 100 million users a month on Walmart.com. This makes Walmart a useful tool to expand your customer base. And with FileMaker, you can streamline the process of working with Walmart.com by integrating your FileMaker app with Walmart Marketplace.

Becoming a Partner with Walmart

Before you can connect your FileMaker app with Walmart, you must first have an account. The onboarding process for Walmart Marketplace is free; however it requires you to be approved based on a series of questions about your business. After you submit your application, Walmart will review it and will let you know if you qualify to be a partner and they will give you a sellers account. From there, you will be able to start integrating with the Marketplace API.

Getting your Keys to the API

Once you are a Walmart partner, the first step of the integration is to generate and obtain your API keys. Go to the Developer Center and select your account. From here you will be able to navigate to the API Keys page.

FileMaker Walmart Developer CenterFrom the API Keys page, you will see your Client ID and Client Secret (if either of these are empty, or you would like them changed, click the Reset Client Id and Client Secret button). You will then need to copy these to use later. Keep the secret in a safe place as this is essentially your password and should not be shared with anyone else. As of September 27th, 2018, Walmart has upgraded their authentication methods to use a token-based authentication vs the signature-based method. This greatly simplifies the authentication while still maintaining a high level of security, so you will want to make sure you grab the right information.

FileMaker Walmart API Keys

Authentication

Once you have your API information, you will need to authenticate your solution with Walmart Marketplace API. At a high level, in order to authenticate your solution, you will need to get the token by using an Insert from URL with token address and the correct cURL information.

Set Variable [ $url ; Value: "https://marketplace.walmartapis.com/v3/token" ]
Set Variable [ $data ; Value: "grant_type=client_credentials" ]
Set Variable [ $auth ; Value: Base64Encode ( $clientID & ":" & $clientSecret ) ]
Set Variable [ $cURL ; Value: "-X POST" & ¶ &
				"-H \"Accept: application/json\"" & ¶ &
				"-H \"Authorization: Basic " & $auth & "\"" & ¶ &
				"-H \"Content-Type: application/x-www-form-urlencoded\"" & ¶ &
				"-H \"WM_QOS.CORRELATION_ID: " & $randomString & "\"" & ¶ &
				"-H \"WM_SVC.NAME: Walmart Marketplace\"" & ¶ &
				"-H \"WM_SVC.VERSION: 1.0.0\"" & ¶ & 
				"--data @$data" ]
Insert from URL [ $result ; $url ; cURL options: $cURL ; Do not automatically encode URL ]

The result will be a JSON-formatted text containing an access token. You will need to use this token to make other calls. The token only lasts for 15 minutes, so you will need to repeat this process in your code to get a new token.

Making Requests and Parsing the Response

Before you make requests, it is important that you understand JSON and cURL. Once you are comfortable with those, look through the Walmart Marketplace Docs. There you will be able to see all of the functions that you can use, such as pulling, tracking, and acknowledging orders, pulling and updating inventory, and more. The Get Inventory request will pull a item by its SKU and return the inventory information.

Request:

Set Variable [ $url ; Value: "https://marketplace.walmartapis.com/v2/inventory?sku=1234" ]
Set Variable [ $cURL ; Value: "-X GET" & ¶ &
				"-H \"Accept: application/json\"" & ¶ &
				"-H \"Authorization: Basic " & $auth & "\"" & ¶ &
				"-H \"WM_QOS.CORRELATION_ID: " & $randomString & "\"" & ¶ &
				"-H \"WM_SVC.NAME: Walmart Marketplace\"" & ¶ & 
				"-H \"WM_SEC.ACCESS_TOKEN: " & $accessToken & "\"" & ¶ & 
				"-H \"Content-Type: application/x-www-form-urlencoded\"" ]
Insert from URL [ $result ; $url ; cURL options: $cURL ; Do not automatically encode URL ]

Response:

{
 "sku":"1234"
 "quantity":
  {
   "unit": "EACH",
   "amount": "0"
  },
 "fulfillmentLagTime":1
}

I strongly suggest taking a look at our accompanying example file as certain portions of the API can be a bit tricky. For instance, the API does not handle the standard carriage return FileMaker uses for new lines, so you must use char ( 10 ) to denote a new line in order for the Walmart API to handle the request correctly.

Conclusion

Integrating your FileMaker app with Walmart Marketplace will streamline your workflow allowing you to take on more orders with the confidence that you will still make your deadlines. Feel free to contact us if you need further assistance or to discuss getting your Walmart account integrated with FileMaker.

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

Download FileMaker HubspotDownload FileMaker Walmart Marketplace Integration Database

Please complete the form below to download your FREE FileMaker database file.

]]>
IoT, FileMaker, and You https://dbservices.com/articles/iot-filemaker-and-you/ Thu, 13 Sep 2018 14:52:05 +0000 https://dbservices.com/?p=9745 IoT, FileMaker, and You

The Internet of Things (IoT) is quickly taking over our day to day interactions with the world. Forbes has predicted the global IoT market to grow to $8.9T in 2020, while the manufacturing and healthcare industries are predicted to spend $890B and $1.335T respectively. Is IoT a good fit for you business? We take a look at how the the Internet of Things can help improve your productivity and quality.

Let’s first define IoT. To put it simply, IoT is connecting any device to the internet. Now you may be thinking my cell phone connects to the internet, is it an IoT device? The answer would be yes. However for the purpose of this discussion we are focusing on use cases that can be applied to a common business problem using a simple device: a button.

IoT in Business

IoT has many uses today from inventory control, temperature monitoring, asset management, and product optimization. Much like FileMaker itself many IoT solutions are custom built to fit the needs and requirements of the individual business. Let us imagine your company produces the latest and greatest widget. These widgets require material to be supplied to each machine. As the material supply for each machine can run out at random times, how will you know when to resupply?

Many companies rely on radios or other employees to constantly monitor and check to ensure the material remains supplied. What if each machine had a simple mechanism to request new material, allowing your FileMaker application to simultaneously gather metrics and notify key people when a machine needs material, maintenance, or went offline.

IoT to the Rescue

Amazon IoT Button

Amazon’s AWS IoT Button is a cloud-programmable button that allows for a quick setup to get you up and running. We choose this for our article because of its simple deployment and programming. For a larger scale deployment a custom IoT device can be built from scratch to fit your business needs. This button allows you to configure 3 separate button pushes (short, long, and double), which can be used to trigger separate actions within your custom FileMaker Application.

Integrating with FileMaker

Continuing with the AWS approach we look to AWS Lambda to handle the communication between the physical world and digital world. Lambda is serverless computing allowing you to run code without provisioning or managing servers. You pay only for the compute time you consume – there is no charge when your code is not running.

AWS Lambda Configuration

AWS Lambda acts as a middle man between the physical button and the FileMaker application. The sample code provided for Lambda is written in node.js. It allows you to enter your own information as environmental variables making it even simpler for you to configure.

AWS Lambda FileMaker Configuration

When the IoT button is pressed, Lambda will perform our node.js code that makes use of the FileMaker Data API to communicate with FileMaker Server. In this example we create a record in a WEB_LOG table then perform a script to handle the type of button pushed. Out of the box the button can distinguish between a single, double, or long click type.

{“serialNumber”:”8675309″,”batteryVoltage”:”1714mV”,”clickType”:”SINGLE”}

The beauty of this approach is that with the power of FileMaker scripting you can do anything with this information. Just a few ideas to get you started.

  • Display a chart on a dashboard to monitor the count of maintenance requests by department.
  • Broadcast on a series of TV monitors throughout the facility for everyone to keep an eye on production status.
  • Email or send a text message to key members of the company.
  • Fully automate your reorder process by creating a PO within FileMaker and integrating suppliers to purchase inventory.

Conclusion

Integrating your custom FileMaker app with a custom IoT solution gives you endless possibilities to streamline, monitor, and create an overall better business environment. Feel free to contact us if you need further assistance or to discuss getting your IoT device integrated with FileMaker.

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

Download FileMaker IoT Demo IntegrationDownload IoT, FileMaker, and You Demo

Please complete the form below to download your FREE FileMaker database file.

]]>
FM Quickstart 17 https://dbservices.com/articles/fm-quickstart-17/ Mon, 06 Aug 2018 13:44:50 +0000 https://dbservices.com/?p=9643 FM Quickstart 17

FM Quickstart is a free FileMaker template built by our team of certified developers to allow you to quickly create a custom application for your organization. It’s designed to use the latest version of FileMaker and has 8 main modules to work with:

  • Dashboard
  • Companies
  • Locations
  • Contacts
  • Quotes
  • Invoices
  • Reports
  • Setup

What’s great about FM Quickstart is that it can be used immediately out-of-the-box, or can be easily modified to fit your business needs.

Let’s go ahead and take a look at each module:

Dashboard

The Dashboard module displays actionable items such as open quotes and the prospects that you will follow up with. You have the option to create new contacts, new quotes, or new invoices quickly for your convenience by using the Quick Actions in the top right.

fm quickstart 17 dashboard

Companies

The Companies module is new and used to manage companies you work with. You can input company information, the industry they are in and where they are located. You also have the ability to associate the salesperson with the company and identify what type of contact they are. At the bottom of the page you can create the contacts that work for the company and it will sync with the contacts module.

fm quickstart 17 companies

Locations

The locations module is new and allows you to track locations of companies you work with. Google Maps is embedded into the module so you can view the location and get directions. Below the address information you can add the contacts that work at the company location. This will also apply the address location to the contacts.

fm quickstart 17 locations

Contacts

The contacts module displays a list of all your business’s contacts. You can enter in their name, title, company, source of contact, address, which account manager is assigned to a contact, and methods to reach the contact (such as phone numbers and email addresses). For more detailed information about the contact, you can view the follow up dates, quotes, invoices, documents, and notes associated with them.

fm quickstart 17 contacts

Quotes

The Quotes module allows you to manage quotes for each customer or prospect. You can view the status of the quote and when it was last updated by the salesperson, and can quickly add line items with an easy-to-search product selector. And to make the flow from a quote to an invoice as smooth and efficient as possible you can create an invoice from a quote.

fm quickstart 17 quotes

Invoices

The Invoice module is used to track invoices sent out to customers and the status of them. You can apply as many payments as needed in the Payments tab, and can view the amount due on the bottom right. And if there are any documents that you’d like to store with the invoice, you can do so in the Documents tab.

fm quickstart 17 invoices

Reports

The Reports module is used to run reports on the data in your application in a centralized location, and already has included an accounts receivable report and a sales report. You can select the criteria you want for the report before running it, such as date range, customer, etc., that way you can slice and dice your data to get the answers you were looking for. And the reports themselves are interactive, allowing you to view the details of an invoice as needed.

fm quickstart 17 reports

Setup

The Setup module is a place for administrators to enter data needed to support the main modules. The setup modules are:

  • Preferences: Allows you to input application-wide settings, including the information of your company, such as your address and logo. The logo will appear on the top right corner of every screen in the application.
  • Products: Allows you to manage the products that you sell to your customer.
  • Users: Allows you to manage the users of the application, including their access privileges.

fm quickstart 17 setup

Conclusion

FM Quickstart is a free FileMaker CRM that’s fully customizable and works out-of-the-box with 8 main modules to support your contact and invoicing needs.

To begin your custom application journey, please visit our FM Quickstart website to download a copy of the template. It is a free download and has been optimized to run on the latest version of FileMaker.

And to learn more about the FileMaker 17 platform, check out our FileMaker 17 Overview article.

 

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

]]>
FileMaker Gmail Integration https://dbservices.com/articles/filemaker-gmail-integration/ Tue, 10 Jul 2018 22:53:35 +0000 https://dbservices.com/?p=9514 FileMaker Gmail Integration

In 2016, Google announced that Gmail has over 1 billion monthly active users. Many companies even leverage Gmail to set up accounts using their company domain name. If you have a FileMaker CRM, or are wanting to have one, adding your email correspondence will help improve the visibility you have over communications with contacts. In this article we will demonstrate how you can import your HTML emails from Gmail directly into your FileMaker system.

Creating a Free Developer Account

The first step of this integration is to create a project in the Google Developers Console if you do not already have one. Once you have created a project, you will then need to enable the Gmail API. Once it is enabled, go to the menu and go to APIs & Services > Credentials. We will need an OAuth 2.0 client ID and secret. If you have not done this before, you will need to create these credentials and set up the OAuth consent screen. We will be using HTTP requests, so you will want to mark that the API will be accessed via a web browser client. You will also need to set the redirect URI to https://dbservices.com or any valid website that will not redirect to something else.

Google Authentication

This is only used as a landing page for authentication and does not need to be anything special. Once the Client ID has been created, copy the Client ID and Client Secret into your solution. Keep your client secret hidden from the world as the combination of the Client ID and Client Secret will be used to authorize your solution to access the end user’s account.

Authenticating with Google and OAuth 2.0

Once you have your API information, you will need authenticate your solution with the Gmail API. Google provides an OAuth 2.0 playground to view how to authenticate, or you can reference our sample database which accompanies this article. At a high level, in order to authenticate your solution, place the user into a web viewer at the API authentication endpoint. This will prompt the user to log in with their own credentials and choose the account to allow your solution to make the connection. Once they have agreed, they will be sent to the address specified in your redirect URI that was passed in the authentication request. When the user is redirected to the new address, the address will now have a URL encoded parameter, which will be the code needed for the next step.

Set Variable [ $code ; Value: "https://dbservices.com/?code=058baec5-cfd7-42ae-b3ea-c0683fa4b6b5" ]

Once you have extracted the code, you will use the code provided, along with your ID and secret to get your access token which will be used to make any API requests.

Making Requests and Parsing the Response

Before you make requests to the Gmail API, it is important that you understand JSON and cURL. Importing emails from Gmail requires 4 main requests: List MessagesGet Message, Get Attachment, and Modify Message. The List Message request will be needed to pull all messages based on the query provided. For example, you can find all emails after a certain timestamp by using the following:

Set Variable [ $cURL ; Value: "-X POST
                               --header \"authorization: Bearer XXXXXXX\"" ]
Insert from URL [ Select ; With Dialog: Off ; $result ; ""https://content.googleapis.com/gmail/v1/users/me/messages?q=after%3A" & $startTimestamp" ; $cURL ; Do not automatically encode URL ]

Keep in mind that the timestamp will need to be formatted for UNIX. Once a successful request has been made, a JSON-encoded response will be returned with the list of message IDs. You will then be able to use the function JSONGetElement() to pull any information out of the response that you wish.

{
 "messages": [
  {
   "id": "1234567890",
   "threadId": "8675309"
  }
 ],
 "resultSizeEstimate":1
}

For example, you can get the ID by using the following function:

Set Variable [ JSONGetElement ( $result ; "messages[0]id") ]

Now that you have the ID of the message, you can use the Get Message request, which will give you the details of the message. Some messages will include an attachment ID, which you will then need to use the Get Attachment request. Finally, if you need to mark the message as read, or archive it, or just change where the message is located, you will need to use the Modify Message request. The Modify request is a little different from the others as it is a POST rather than a GET, so you will have to pass the extra information as JSON in the cURL options.

Set Variable [ $cURL ; Value: "-X POST
                               --header \"authorization: Bearer XXXXXXX\"
                               --header \"Content-Type: Application/json\""
                               --data @$modifyJSON" ]
Insert from URL [ Select ; With Dialog: Off ; $result ; "https://www.googleapis.com/gmail/v1/users/me/messages/" & $messageID & "/modify" ; $cURL ; Do not automatically encode URL ]

I strongly suggest taking a look at our accompanying example file as certain portions of the API can be a bit tricky. For instance, pulling the details of the message is a little complicated and you will need to implement loops to traverse through the response to grab the specific information that you need.

Conclusion

Integrating your FileMaker app with Gmail will greatly improve your business’s visibility over communication with your company’s contacts. Feel free to contact us if you need further assistance or to discuss getting your Gmail account integrated with FileMaker.

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

Download FileMaker HubspotDownload FileMaker Gmail Integration Database

Please complete the form below to download your FREE FileMaker database file.

]]>
FileMaker 17 Starter Solutions https://dbservices.com/articles/filemaker-17-starter-solutions/ Thu, 28 Jun 2018 12:20:18 +0000 https://dbservices.com/?p=9414 FileMaker 17 Starter Solutions

The FileMaker Starter Solutions are here for you to start your journey in developing your dream application.  FileMaker comes with 6 Starter and 16 Sample templates that assist in starting a new application and allow you to customize it to your business needs.

The Six Starter Solutions are:

  • Assets
  • Contacts
  • Content Management
  • Inventory
  • Meetings
  • Tasks

The 16 Sample Solutions are:

  • Assets
  • Contacts
  • Content Management
  • Estimates
  • Event Management
  • Expense Report
  • Inventory
  • Invoices
  • Meetings
  • Personnel Records
  • Product Catalog
  • Projects
  • Research Notes
  • Resource Scheduling
  • Tasks
  • Time Billing

The 6 starter solutions are simple and a great springboard to create new FileMaker apps to manage your business. If however you need more advanced solutions, check out the 16 sample solutions. They have more features than the starter solutions, and may ultimately be a better fit for your business needs.

Difference From Past Years

All 6 Starter Solutions have been designed with Universal Touch theme.  The new theme includes a variety of styles so you can more easily combine the different styles in the same layout. And when you install FileMaker Go on your iPad/iPhone, it comes with 4 sample solutions: Contacts, Event Management, Invoices, and Projects. To modify the FileMaker Go solutions you will need to email them to your desktop and make changes in FileMaker Pro Advanced.

Creating a New Application

To create a new starter solution, simply open FileMaker Pro Advanced and the launch center will come up. If you don’t already own FileMaker, you can download a free FileMaker Trial to give the templates a try.

From here go to Create New.  You can choose one of the 6 Starter Solutions or you can scroll down to the samples to view the 16 Sample templates.

filemaker 17 starter solutions page 1

filemaker 17 starter solutions page 2

The starter solutions are designed for the desktop, but can be accessed on an iPhone, iPad, or Webdirect.  If you would like layouts customized to iPhones, iPads, or WebDirect, check out the sample solutions.

Let’s take a l0ok at the 6 starter solutions.

Assets

The Assets starter solution is designed to track office assets, where the assets are purchased, and who is using them. Once the information is put in, the name, type, purchase date, price and used by date are at the top of the page for improved readability.

filemaker 17 assets starter solution

Meetings

The Meetings starter solution is used to track meetings, along with setting agenda topics and assigning action items for each meeting. The meeting information is presented at the top of the page for improved usability.  The starter solution gives you a tab on the right to write down any notes you may have for the meeting and also put it at the top of the page.  The starter solution also includes the topics and action items tabs to put in information but with a different layout to make it easier to navigate.

filemaker 17 meetings starter solution

Contacts

The Contacts starter solution is used to manage personal and business contact information for several individuals. Below the picture you are able to input the contact name and job title and to the right you are able to enter and view additional information such as addresses and phone numbers.  Once this information is put into the template, the contact name and company displays at the top for usability.

filemaker 17 contacts starter solution

Content Management

The Content Management starter solution is used for collecting and organizing documents, images, music etc.  At the top of the page it displays the name, the type of product/service, the status of it, and the location of it.  This new addition makes it easier to quickly identify the record you are looking at.

filemaker 17 content management starter solution

Inventory

The Inventory Starter Solution can be used to manage inventory levels of products and supplies, along with tracking part numbers, transaction history, and more.  The template has made significant changes by first changing where the information in inputted.  The three tabs are for the part, the cost of the part, and the stock of it.  In the part tab it gives the option to put in the part number, barcode, description, location and date.  With the cost tab you can calculate the unit cost and unit price, along with making it taxable.  Below the category line is a stock button that can be used to order more of the product/part.  Once all the information is put in, the name, part number, units on had, and availability is displayed at the top of the page to alert you of the part’s current status.

The Inventory Starter Solution is a great starting point for creating an inventory module as it contains only 2 tables: products and inventory transactions.

filemaker 17 inventory starter solution

Tasks

The Tasks starter solution can be used to track tasks and the priority, status, and due dates of those tasks, and you can add as many assignees to the task as you wish.  Any attachments are added to the right of the assignee with a description of the attachment available.  Below the attachment is the overall description of the task. After all this information is put in, the task, status of the task, category and due date are displayed at the top for ease of use.

filemaker 17 tasks starter solution

Conclusion

FileMaker has continued to improve upon the starter solutions from years past to make it easier for you to create your own solution, and with now 6 starter solutions to compliment the 16 sample solutions, you have more options than ever before.

If you are looking for a CRM and the starter solutions are not fitting your business needs, check out our own template, FM Quickstart. It is a free download and has been optimized to run on the latest version of FileMaker.

And to learn more about the FileMaker 17 platform, read our FileMaker 17 Overview article.

 

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

]]>
FileMaker 17 Overview https://dbservices.com/articles/filemaker-17-overview/ https://dbservices.com/articles/filemaker-17-overview/#respond Tue, 15 May 2018 13:09:11 +0000 https://dbservices.com/articles/filemaker-16-overview-copy/ FileMaker 17 Overviewfilemaker 17 icon

A new and exciting version of the FileMaker platform is here! 2018 marks over 33 years in business for FileMaker, Inc. In a collection of articles, we review what’s new in the FileMaker platform, specifically the features for FileMaker Pro Advanced 17, FileMaker Server 17, FileMaker Go 17, along with FileMaker Cloud. Below you will find an overview of our favorite features with links to our more in-depth articles and example videos.

What’s New?

  • New features includes native support for Found Set Portals, redesigned layout tools, multiple email attachment support, and create directories option when saving files.
  • New mobile features include Local Notification support, auto-complete data entry improvements, keyboard shortcut support, sensor function support (battery, location, altitude, speed, acceleration, magnetic, steps, air pressure), and drag and drop via iOS split screen.
  • FileMaker User Licensing is the default licensing moving forward. This is similar to FileMaker Licensing for Teams (FLT) and includes FileMaker Pro Advanced as the default client. You can now install up to 3 FileMaker Servers for more flexibility for deployment and testing servers. You will also receive a single license key for all products.  Overall welcomed simplicity to licensing.
  • The new FileMaker Data Migration Tool allows you to migrate your data from one version of your application to another saving you hours when deploying a new version of your FileMaker application.
  • FileMaker Server on premise now includes a new admin console interface similar to the FileMaker Cloud (via Amazon Web Services) and the official release of the FileMaker Data API (RESTful API) with support to upload data into container fields and run FileMaker scripts.
  • FileMaker Cloud for Amazon Web Services (AWS) running CentOS Linux continues to improve and has reached parity for new features supported by FileMaker Server 17. You must have annual licensing in order to use FileMaker Cloud.
  • FileMaker 17 Trial is now for 45 day, giving you more time to check out the product when building a custom application up from 15 days.

FileMaker Pro Advanced 17

FileMaker Pro Advanced is the default client moving forward, and while the advanced tools are off by default, you can easily turn them in preferences by selecting “Use Advanced Tools”. FileMaker is a well-rounded platform and this release provides improvements to create custom apps such as improved layout design tools, improved usability, and enhanced security, allowing you to build more sophiscated applications faster than ever before.

Create Custom Apps

Upon launching FileMaker Pro Advanced you now see from the File menu a Create Window option that provides you a way to begin with either a Blank application, Converting data to a New Application, or Learn more with a link to the new FileMaker Custom App Academy.

You can also begin with a starter application or sample application.  The new starter applications include Assets, Contacts, Content Management, Inventory, Meetings, and Tasks and all include a good foundation for new applications. The sample applications are the same as prior versions and include Assets, Contacts, Content Management, Estimates, Event Management, Expense Report, Inventory, Invoices, and Meetings, Personnel Records, Product Catalog, Projects, Research Notes, Resource Scheduling, Tasks, and Time Billing.

Add-On Tables

In addition you can now add Add-on Tables to your custom apps.  Quickly add a common feature which inserts a table, relationship, and portal to the screen for common modules you may want to add in your custom FileMaker applications. The Add-on Table list includes Action Items, Addresses, Attachments, Companies, Email Addresses, General Info, Inventory Transactions, Notes, People, Phone Numbers, and Topics.

The relationship graph also now shows on the right the text, “If you add a portal to a layout and choose New Add-on Table, new table occurrences are created here for you. Or you can work with the relationships graph yourself. For guidance on creating relationships, see the Custom App Academy.”

With Add-On Tables we see great potential in the FileMaker Platform for building more rapid applications and potentially bolting on third party products.  See FileMaker Add-On Tables in action as Kevin Boehle shows you in a video.

Found Set Portal

You can now display the current found set of records in a portal without any extra programming or the need to create a self-join relationship to your table. No additional relationship will be added to your relationship graph. Learn about the FileMake Current Found Set Portal in detail as Nathan Kiefer walks you through the feature in a video

Redesigned Layout Tools

You can now work with objects in a group without ungrouping them, allowing you to resize, move, and format individual objects that are in a group without the laborious process of ungrouping them first then later regrouping the objects.

The Inspector window and Field Picker have been improved so they are no longer floating windows by default allowing you to use the tools more easily especially with multiple monitors as you create and edit layouts.

Field Picker

The Field Picker can be resized, great if you are using long field names so you can easily see the fields. Also there is a new Control Style options you can set before dragging a field to a layout so the field appears as desired. Options include Edit Box, Drop-Down List, Pop-Up Menu, Checkbox Set, Radio Button Set, Drop-down Calendar, or Concealed Edit Box. In addition, The Layout Objects window introduced in FileMaker 16 is now a part of the Field Picker allowing you to toggle between Fields and Objects.

Inspector Window

The Inspector Window now anchors to the right of your window in layout mode and allows you to toggle your views between Position, Styles, Appearance, and Data. You can still create additional floating Inspector Windows if desired.

Universal Touch Theme

A new Universal Touch theme is available that is used by starter applications and add-on table, designed to be simple and work well with iOS apps. The neutral color palette should allow you to customize the theme easily by adding your desired colors to a few styles quickly.

Multiple Email Attachments

When sending email directly from FileMaker you can now attach multiple files to the email. The Send Mail script step allows you to insert multiple paths to send multiple files. In prior versions you had to use a third party email plugin to automate sending an email with multiple attachments.

Create Directories Option

Script steps that export or save files now include a Create Directories option. In prior versions you had to manually create the folders using a third party plugin and now FileMaker will allow you to do this very easily. Now you can save a PDF or Excel spreadsheet to a subfolder on a user’s desktop and have FileMaker create that subfolder.

Copy and Paste Custom Menus

You can copy and paste custom menus from one file to another. Developers will rejoice who have built up custom menus as part of their solutions or have multiple files that you wish to streamline custom menus across.

Show Custom Dialog

You can now use variables for input fields in custom dialogs. When specifying the input field you can now select variable as the value. No longer will you have to use a global field and now you can use simple variables you define in your script.

Account Lockout

Users who fail to log in to a hosted file local account several times will be locked out of the application for several minutes. This will help prevent brute force attacks on FileMaker Servers.

FileMaker Pro Advanced Technical Specs

FileMaker Pro Advanced 17 is supported on Windows 10 Pro and Enterprise, Windows 8.1 Standard and Pro, Windows 7 SP1 Professional and Ultimate, macOS High Sierra 10.13, and macOS Sierra 10.12.


FileMaker Go 17

FileMaker Go is for iPad and iPhone users and has all the features provided in FileMaker Pro Advanced plus specific iOS features listed below, except for developer tools. You need FileMaker Pro Advanced on your desktop to build your application. The new version of FileMaker Go 17 is available in the App Store.

Local Notifications

A new script step Configure Local Notification is now available that allows you to display a notification alert to an iOS device when FileMaker Go is not running or is in the background. You can queue or clear a local notification for an iOS device. Learn about FileMaker Push Notifications as Kiyan Allaei demonstrates how to use the new Configure Local Notification script step in a video.

Sensor Functions

You can now return the value of a specified sensor for an iOS device using the GetSensor( ) function. Available sensors include Battery, Location, Attitude, Speed, Acceleration, Magnetic, Step Counts, and Air Pressure. Learn about FileMaker Sensor Functions as Armen Nahapetian demonstrates how to use the new GetSensor script step in a video.

Auto-Complete

Data entry in FileMaker Go will be as easy as doing data entry on FileMaker Pro Advanced as you can now add values from a value list using auto-complete.  Even if you’re not using auto-complete and have large value list you will see improvements. This is a great welcome to mobile customers using FileMaker Go.

Keyboard Shortcuts

Users who use Bluetooth keyboards when working with FileMaker Go now have common keyboard shortcuts available like Find Mode. Hold down the Command key and you will see all the shortcuts available. Available shortcuts include New Record, Duplicate Record, Delete Record, Omit Record, Show All Records, Find Mode, Modify Last Find, Sort Records, Print, Close Window, Help, and Launch Center. A great addition for power mobile users.

Drag and Drop

From within the FileMaker Go application via split screen you can drag and drop an image, file, and text data.  For those who utilize split screen this will create a better user experience between your application and other apps you use. You can drop from FileMaker Go to other applications if they support drag and drop too.

FileMaker Go 17 Technical Specs

Requires iOS devices running iOS 11.2 or later on the iPad or iPhone devices.


FileMaker Server 17

FileMaker Server is known for its ease-of-use and ability to run without any problems. The newest version focuses on an entirely new admin console interface, performance improvements, security updates, and many enhancements related to the FileMaker Data API, FileMaker Admin API (beta), and the FileMaker Server Admin Console.

FileMaker Data API Official

The future of FileMaker Custom Web Publishing is now live and no longer in beta supporting new features such as uploading containers and calling FileMaker scripts. FileMaker continues to support the FileMaker PHP API for Custom Web Publishing (via Command Line Interface only) and has been clear to developers for over a year that your web apps should be built using the new REST API. Learn more about the Official FileMaker Data API as Mason Stenquist goes in depth about the Official FileMaker Data API in a video.

FileMaker Server Admin Console

The FileMaker Server Admin Console has been redesigned with a more responsive, simpler user interface. The interface looks similar to the FileMaker Cloud interface and is much more responsive than the previously-built-on-Java admin console, embracing modern responsive web design via HTML and Javascript. New notifications allow you to easily see messages from the Admin Console. See the simplicity of FileMaker Server 17 Admin Console as Kaz McLamore shows you what to expect in the new FileMaker Server 17 Admin  Console in a video.

FileMaker Server Admin API

The FileMaker Server Admin API allows administrators to create a web interface to manage servers.  The FileMaker Server Admin API was previously only available on FileMaker Cloud but is now available for on-premise FileMaker Servers and is in beta till September 27th, 2019. Learn about the FileMaker Server Admin API by checking out a previous article when the FileMaker Server Admin API was released for FileMaker Cloud as Mason shows you how the new FileMaker Server Admin API works with FileMaker Cloud in a video.

FileMaker Server 17 Technical Specs

Compatible with Windows Server 2016 Standard Edition, Windows Server 2012 R2 Standard with Update Microsoft KB2919355, macOS High Sierra 10.13, and macOS Sierra 10.12.  If you’re on Windows Server 2008 it’s a good time to think about moving to FileMaker Cloud.

WebDirect browser support includes Safari 11.x, IE 11.x, Microsoft Edge 41+, Chrome 64+. Mobile browsers Safari on iOS 11.2 minimum and Chrome 64 on Android 7.x. Note that Firefox is not on the list of supported browsers.


FileMaker Cloud

FileMaker Cloud was initially released in September 2016 and is a great product for most customers to consider especially if you need to replace your current server hardware! This new product is available ONLY through Amazon Web Services (AWS) and gives you FileMaker Server in minutes. FileMaker Cloud is fast, lowers long-term maintenance, and is secure. FileMaker Cloud 1.17 will support most of the features of FileMaker Server 17.  This is the first release in which FileMaker Cloud is on parity to FileMaker Server 17 upon release. The FileMaker Data API is no longer a trial for FileMaker Cloud. Read about FileMaker Cloud 1.16 released in November 2017 for AWS from Kiyan Allaei .


FileMaker Data Migration Tool

Going from a development version of your application to a production version now has gone from days to hours, and from hours to minutes with the new FileMaker Data Migration Tool. For customers with large amounts of data this is a huge deal. Learn more about the FileMaker Data Migration Tool as Ethan demonstrates in a video and includes a download file to make the tool easy to use for you.


FileMaker User Licensing

As of launch of FileMaker 17 there is a new licensing model in place. FileMaker’s goal is to continue to create simplicity in understanding licensing for new and existing customers across all the products in the platform. Just count the number of users who will access your FileMaker application and that is number of seats you need to license your app. Users can use the entire platform and administrators can now deploy FileMaker Server up to 3 times.

No longer can you buy just an individual product; instead users have access to the entire FileMaker platform. As one of the top FileMaker Partner Resellers in the world, Jared Ellison will set your expectations for FileMaker User Licensing as he discusses the new and improved licensing and how customers immediately transition to FileMaker User Licensing.


Summary

The FileMaker platform continues to be the leader in creating innovating powerful custom applications for organizations all around the world and works seamlessly across Windows, Mac, iPad, iPhone, and the web. The new release of FileMaker 17 platform further emphasizes this.

FileMaker Go continues to give the platform a competitive edge and this version has many updates related to iOS. Organizations can create innovative and rapid custom applications for iOS with infinite ROI. Creating prototype applications on the iPad and iPhone is a matter of hours not months.

FileMaker 17 is a great release and has features everyone can benefit from. We look forward to building innovative custom applications using the new tools for Mobile, Web and the Desktop.

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

]]>
https://dbservices.com/articles/filemaker-17-overview/feed/ 0
FileMaker Go Push Notifications https://dbservices.com/articles/filemaker-go-push-notifications/ Tue, 15 May 2018 13:08:43 +0000 https://dbservices.com/?p=8693 FileMaker Go Push Notifications

With the release of the FileMaker Go 17, you can now create a push notification on the user’s iOS device. This script step gives you the ability to not only customize the push notification, but also to run scripts after the user interacts with the notification.

Previously there was no way to notify the user if FileMaker Go was either running in the background or closed entirely; however, since iOS provides “local notifications” you can now set up notifications to be triggered at a certain date or time or even if the user’s device comes within range of an iBeacon.

Let’s take a look at how you can set up push notifications using FileMaker Go.

How to Set Up a Notification

There are two main choices in the Configure Notification script step; “Queue” and “Clear”. The “Clear” option allows the developer to specify the name of the notification that will be deleted in the form of a calculation. The “Queue” option does the opposite, configures a local notification based on several specified settings

  • Notification name
  • Script triggered on notification interaction
  • Timed delay for when the notification will trigger
  • Title of notification
  • Body text of notification
  • Button labels (maximum of 3 buttons)
  • Setting buttons to bring application to foreground

The same script will always trigger regardless of which button is selected; however, the script parameter will be set to a return delimited list, with the name as the first value, the button label as the second value, and a Boolean representing whether or not the application was brought to the foreground.

FileMaker Push Notifications Setup

Here is an example of the Configure Notification script step, that has two buttons set up, with one bringing FileMaker Go to the foreground and the other leaving it in the background.

The notification created in this example will return the following list if the second button is selected.

FileMaker Push Notification Result

 

 

 

 

 

 

If notifications are disabled on the iOS device, the notifications will not appear, and the triggered script will be given the parameter “NotificationNotAllowed”. If notifications are enabled and the user presses the notification itself and not one of the options, the triggered script will be given the parameter “NotificationSelected”.

What If FileMaker Go is in the Background?

Since notifications will often appear when FileMaker Go is not in the foreground, there are different behaviors that will occur based on the status of the application.

If Go is not running when the user interacts with a notification that triggers a script, Go will launch and run its regular startup process before running the triggered script. If the user dismisses the notification and there is no triggered script, Go is not launched.

If Go is running in the background but not closed, re-authentication may need to be done based on the file’s security settings before any triggered scripts can run; if re-authentication fails, Go will not launch. By default, Go will be brought to the foreground when a script is run; however, if specified, triggered scripts can run on the application without bringing it to the foreground. Apple’s guidelines state that the application only needs to be moved to the foreground if there is required user action, if not it is best to keep the app in the background.

Conclusion

The ability to set local notifications in FileMaker now enables us to grab users’ attention even if they are not using FileMaker Go. You can notify users at a specified date and time or if they come within range of an iBeacon or geofence. Using push notifications can help streamline users to where they need to be, saving them time and eliminating the need to create outside reminders for daily tasks.

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

DownloadDownload Push Notifications for FileMaker Go

Please complete the form below to download your FREE FileMaker database file.

]]>
Official FileMaker Data API https://dbservices.com/articles/official-filemaker-data-api/ Tue, 15 May 2018 13:07:39 +0000 https://dbservices.com/?p=8627 Official FileMaker Data API

In FileMaker 16 we were introduced to the trial version of the FileMaker Data API, but with 17 the Data API is now live and ready to take the place as FileMaker’s Custom Web Publishing technology of choice. With the removal of the ability to control the PHP or XML API from the FileMaker Server Admin Console and only allowing you to enable/disable it via the command line, it’s pretty clear that FileMaker sees the Data API as the future.

The 2 biggest additions to the Data API are the ability to run scripts and the ability to upload directly into a container field, but they’ve also completely modified every single call from the trial version. Most of the changes are small, but they are worth going over, and you’ll want to update before September 27, 2018 as that is when the trial of the Data API expires for FileMaker Server 16.

Data Available per User

The amount of data you’ll have available is 2 GBs per user, per month, and will be shared and tracked annually.

FileMaker Data API - Data Available per User

You can view your current data usage on the FileMaker Server Admin Console. Keep in mind that transferring lots of container data could use your data faster.

Enabling Data API

To use the Data API, you’ll need to enable it in a few places. If you are using FileMaker Cloud the Data API will be enabled by default, but if you are using FileMaker 17 Server you’ll need to enable it in the admin console. Once logged in you can find the setting under Connectors > FileMaker Data API. You’ll also have to enable the privilege set for the account you’ll be signing in with and ensure it has “Access via FileMaker Data API – FMS only (fmrest)” checked under file > manage > security.

FileMaker Data API Admin Console SettingAuth Changes

The FileMaker Data API now uses a more standardized authentication method. You’ll still have to get a session token from FileMaker that is good for 15 minutes, only instead of passing the username and password as in your post body, you’ll need to send them as a basic authorization header where the username and password are base64 encoded. You’ll also have to send an empty JSON object in the body.

-X POST 
 https://{{server}}/fmi/data/v1/databases/{{database}}/sessions 
 -H 'Authorization: Basic YWRtaW46cGFzc3dvcmQ=' 
 -H 'Content-Type: application/json' 
 -d '{}'

Results:

{
 "response": {
    "token": "41a699b37017c9fa10d140e4bf820727f57b2447036dcdd821"
 },
    "messages": [
 {
    "code": "0",
    "message": "OK"
 }
 ]
}

You can download Postman to test API calls, which is the tool used in this article’s video. You can also download the Postman collection at the bottom of this article to help you get started making REST calls.

Each additional call to work with the data will require that you pass the token in the header. Instead of using the custom FM-Data-token headers now, you’ll use standard Authorization headers, and you’ll now have to prepend “Bearer” before your session token.

-X GET 
 https://{{server}}/fmi/data/v1/databases/{{database}}/layouts/{{layout}}/records 
 -H 'Authorization: Bearer 41a699b37017c9fa10d140e4bf820727f57b2447036dcdd821'

Data API Scripts

You can now run a FileMaker script using the Data API, which is crucial to making an awesome web solution work with FileMaker, but there are some quirks to keep in mind. For instance there is no Run Script command; instead, you can call up to 3 scripts per request:

  • Pre-request
  • Pre-sort
  • After-sort

And you can only run scripts for the following commands:

  • Create Record
  • Delete Record
  • Get Record
  • Get Records
  • Find Records

We recommend that you use the Create Record command when you want to run a script, and create a record in a log table to keep track of all the script commands that are coming into your FileMaker system. The other issue with running a script from some of the other commands is that if you do not find any records, your script and pre-sort script will not run. The pre-request script would still run though.

Uploading Into Container Fields

A new trick that FileMaker has learned, that no previous Custom Web Publishing API could do, is upload directly into a container field. With past APIs your best bet was to upload to your web server and then send the url location of the upload and have a FileMaker script Insert from URL that location. Now you can upload directly to a container field. To do so you’ll need to post the data to a URL that specifies the layout, record, container name, and container repetition. This is also the only API call that requires the content-type header to be set to multipart/form-data. And finally the cURL key name needs to be “upload”

-X POST 
https://{{server}}/fmi/data/v1/databases/{{database}}/layouts/{{layout}}/records/{{recordId}}/containers/{{containerFieldName}}/{{repetionNumber}}
-H 'Authorization: Bearer 41a699b37017c9fa10d140e4bf820727f57b2447036dcdd821' 
-H 'content-type: multipart/form-data' 
-F 'upload=@C:\Users\Administrator\Pictures\test.png'

Responses

The responses have changed a bit too. As you can see below, in 17 the response now puts all data in response.data, and error codes are now located at messages[0].code implying you could have multiple errors returned.

FileMaker 16

{
  "errorCode": "0"
  "data": "[{
    "fieldData": { 
      ... 
    },
    "portalData": {  
      ...
    }
  },
  "modId": 2, 
  "recordId": 123
  }]"
}

FileMaker 17

{
  "response": {
    "data": [
    {
      "fieldData": {         
         ... 
      },
      "portalData": {
         ... 
      },
    "modId": 2, 
    "recordId": 123
    }
  ]
  },
  "messages": [{"code":"0","message":"OK"}]
}

It will also now always return a message whether there was an error or not and will return “OK” if there were no errors. Grouping the data and messages this way helps to separate things a bit nicer and gives more flexibility to add additional metadata in the future such as field and layout information which was available in previous CWP APIs.

Why All the Changes?

Although the FileMaker Data API has changed quite from the trial, the changes help make the API similar to the Admin and Cloud API, making it easier to learn them all. Also the addition of the v1 in the URL paths is important for ensuring FileMaker is able to make changes in the future without breaking existing integrations, and simply have new integrations use the v2 path etc as new versions are released.

By moving everything towards industry standards it makes it much easier to have web developers integrate with FileMaker as they don’t have to learn a custom API–they just use the same restful API calls they use to integrate with any other software out there–which will ultimately result in better and more web integrations.

Conclusion

Now that the FileMaker Data API is officially live, we recommend using it for all future web integrations. You should also consider switching current web integrations over to the Data API as the XML and PHP APIs will likely be deprecated in future versions. Contact us if you need help integrating with the Data API.

 

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

 

DownloadDownload FileMaker Data API Postman Collection

Please complete the form below to download your FREE FileMaker Data API Postman Collection.

]]>
FileMaker User Licensing https://dbservices.com/articles/filemaker-user-licensing/ Tue, 15 May 2018 13:06:32 +0000 https://dbservices.com/?p=9027 FileMaker User Licensing

As of FileMaker 17 a new and improved licensing program called FileMaker User Licensing is available. FileMaker is no longer selling individual products; instead they are selling the entire platform for users. As FileMaker Growth Partner of the Year for the Americas we are one of the top FileMaker Partner Resellers in the world. Here we provide you with what to expect with the new FileMaker User Licensing program.

  • FileMaker User Licensing requires a minimum of five users to purchase. Any customer can now add users in increments of one, before you had to add users in packs of five users.
  • FileMaker’s previous default licensing program, FileMaker License for Teams (FLT), has been replaced along with the Legacy Licensing programs AVLA, VLA, AFLT, and FLT. All customers will be immediately transitioned to FileMaker User Licensing when your license keys arrive via email.
  • FileMaker User Licensing comes with the entire FileMaker Platform: FileMaker Server, FileMaker Pro Advanced, FileMaker Go, FileMaker WebDirect, and the FileMaker Data API.
  • All customers will receive a single license key for each contract and the license key will not change from version to version.
  • You will be able to install up to 3 FileMaker Servers with FileMaker User Licensing. Great for customers who have multiple servers and utilize testing servers and/or backup servers. Only 1 FileMaker Server can be used for FileMaker Cloud.
  • FileMaker Cloud hosting must be done on annual licensing, as it will not work on perpetual (bought outright) licenses.
  • User pricing is tiered based on 5-9 users, 10-24 users, 25-49 users, 50-99 users, 100-249 users, 250-499 users, and 500+ users. Some customers may save money, while others may pay more based on user count.
  • Perpetual licensing is still available though not recommended for most business cases and is 3x the price of Annual licensing.

Along with FileMaker User Licensing, Concurrent Connection Licensing and Site Licensing continue to be available and have been updated. The new license program brings simplicity, the biggest being that FileMaker Pro has been replaced with FileMaker Pro Advanced for all users.  For those who currently have a FileMaker License contract, you will automatically update to the new licensing programs and will be receiving the new FileMaker User Licensing download links, license keys, and new FileMaker License Certificate for FileMaker Server installations via email.

FileMaker Pro Advanced

FileMaker Pro Advanced is the only desktop offering moving forward. FileMaker Pro is no longer an option, so everyone has access to FileMaker Pro Advanced developer tools. To make this offering more exciting, FileMaker Pro Advanced works both online and offline unlike FileMaker Licensing for Teams with FileMaker Pro.

What is a User

A user is a unique person who will access the FileMaker Platform.  They can use or create FileMaker apps on an iPad, iPhone, Mac, Windows, or the Web. With user licensing, FileMaker is moving away from only offering 5 user packs and you can increment 1 user license after starting at 5 users. If you currently have a FileMaker license, you will automatically transition to the new licensing program.

Existing Customers Transition

filemaker user licensingFileMaker Licensing for Teams (FLT) and FileMaker Volume Licensing (VLA) customers will be transitioned to the new FileMaker User Licensing when your license keys are sent via email.  With FileMaker User Licensing you get 3 servers with it as well.

License Keys

With your license for FileMaker 17, you will only get 1 license key for all the product installations and it will not change for each release. If you have multiple contracts you will receive a key for each contract, but we will work with you to merge the contracts into 1 as your contract comes up for renewal 90 days out.

You will need to download and install the FileMaker License Certificate for each FileMaker Server when installing or changing the number of users licensed vs entering in a new license key as in the past. So remember to also download the FileMaker License Certificate which is an encrypted form of the Customer FileMaker License Agreement from the Electronic Software Download (ESD) page when preparing to install FileMaker Server.

Concurrent Connection Licensing

Concurrent connection licensing is 3x the price of regular FileMaker licensing. Ideal for when you have anonymous or occasional users of your FileMaker system. You get 1 FileMaker Server plus the amount of concurrent connections starting at 5 connections. You can put the concurrent connections on either a regular server or a cloud server as long as you have annual licensing.  Anonymous users cannot use FileMaker Pro Advanced; therefore, they will have to access their FileMaker application through FileMaker Go and/or FileMaker WebDirect only.

For those of you that have FileMaker Pros and a FileMaker Server with 10 concurrent connections, you will get 2 license keys, one for FileMaker Concurrent Licensing and one for FileMaker User Licensing. The user licensing can be used on the concurrent connections server without taking away any connections. This will allow you to just use 1 server instead of setting up multiple servers. With Concurrent Connections Users, you cannot have these users use the FileMaker User License server unless you buy a user license for each of these users.

Site Licensing

Site licensing is very similar to how it was before, defined by the total headcount (full-time employees, part-time, and contractors in your organization), not just by who uses FileMaker, and starts at 25 seats. One thing to take into consideration is that the EULA states that you must maintain compliance with your headcount number. If the headcount in your organization exceeds the site license count by 10% or more at anytime during the term of your contract, you must add new seats immediately. You also get as many FileMaker Servers as the total headcount including FileMaker Cloud. That’s alot of servers and a technical change in the EULA which used to say unlimited FileMaker Servers.

Site Licensing saves many organizations money when organizations have a headcount over 15 and most of the organization uses the FileMaker platform. Site Licensing is NOT available on the FileMaker Store. Call us for a quote for Site Licensing if most of your organization uses the FileMaker platform.

FileMaker Data API

The FileMaker Data API is the default way to build custom websites that push or pull data from FileMaker Server and is different then FileMaker WebDirect. With the FileMaker Data API, you are allowed an unlimited data transfer amount of inbound API calls (calling other websites from FileMaker Server). For Outbound API Calls (calling the FileMaker Server from other applications) you have a shared annual data transfer limit. It is calculated by multiplying the number of users licensed, or concurrencies, X 2GB per month X 12 months to get the Shared annual data transfer amount allowed. So each user will give you 24GB of data that is shared. That’s quite a bit of data. If you are wanting to add more data, contact us or your FileMaker Sales rep directly for a quote.

FileMaker Shared Hosting

FileMaker Shared hosting customers will find that after installing FileMaker Pro Advanced 17 you will not be able to connect to your FileMaker Shared Hosting provider.  The last supported client version for shared hosting is FileMaker 16 as FileMaker only supports two versions back. You will see a message when bringing up the host, “The host does not support this version of FileMaker” as the FileMaker EULA (End User License Agreement) no longer allows shared tenants for FileMaker Server as of FileMaker 14. Contact us to get a quote to move you to your own FileMaker Server or a FileMaker Cloud Server on the leading cloud provider Amazon Web Services (AWS).

Price Protection

You have price protection for up to 1 year (May 2019) from the launch of FileMaker 17 User Licensing to renew at your previous license program rates. You have the same options to renew for 1, 2, and 3 years.  When renewing for 2 years you get 10 percent off and for 3 years you get 20 percent off.  If you need to downgrade, you will receive up to 3 servers via a downgrade too.

Summary

The new and improved FileMaker User Licensing program makes understanding FileMaker Licensing easier and provides more convenience to you moving forward, as you get the entire platform at your disposal instead of individual products. If you have multiple contracts you will receive multiple keys so consolidating your contracts is always recommended and we can help you consolidate contracts. Contact us if you have any questions and we will help guide you to the best FileMaker Licensing for your FileMaker application use case.

 

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

]]>
FileMaker Go Sensor Functions https://dbservices.com/articles/filemaker-go-sensor-functions/ Tue, 15 May 2018 13:05:36 +0000 https://dbservices.com/?p=8690 FileMaker Go Sensor Functions

In addition to being a leader in Rapid Application Development, FileMaker empowers developers to creatively implement solutions for a wide variety of business cases. FileMaker engineers have expanded the developer’s toolbox by incorporating access to the internal sensors of iOS devices for FileMaker Go users. The dynamic single GetSensor function takes one of 19 primary parameters and returns in real-time data from the accelerometer, gyroscope, compass, or barometer in your device.

The Function

The parameters that can be used with the new function include:

  • GetSensor ( “batteryLevel”)
  • GetSensor ( “batteryStatus” )
  • GetSensor ( “location” { ;accuracy; timeout} )
  • GetSensor ( “locationValues” { ;accuracy; timeout} )
  • GetSensor ( “attitude” )
  • GetSensor ( “rotationRate” )
  • GetSensor ( “accelerationByUser” )
  • GetSensor ( “accelerationByGravity” )
  • GetSensor ( “rotationRate” )
  • GetSensor ( “speed” {; accuracy; timeout} )
  • GetSensor ( “heading” {; accuracy; timeout} )
  • GetSensor ( “magneticField” )
  • GetSensor ( “compassMagneticHeading” {; accuracy; timeout} )
  • GetSensor ( “compassTrueHeading” {; accuracy; timeout}
  • GetSensor ( “stepCount” {; forPastSeconds} )
  • GetSensor ( “stepDistance” {; forPastSeconds} )
  • GetSensor ( “stepFloorsUp” {; forPastSeconds} )
  • GetSensor ( “available” )
  • GetSensor ( “airPressure” )

FileMaker Go Available Sensors

Use Cases

There are many practical uses for employing device sensors. The new functions could be used to help track employee activity out in the field or notify a user with a low battery before they attempt to run a lengthy scripted process. Remember that sensor availability varies between iPad and iPhone models! GetSensor (“available”) should be used to validate which sensors are available on a particular device before executing the GetSensor function with other parameters in your custom apps. In our demonstration we incorporate this new functionality to produce a fun, simple pedometer.

 Conclusion

Using this simple but dynamic function you can integrate the sensors in your device with your FileMaker Go optimized solution. Feel free to contact us if you need further assistance or to discuss getting your iOS device’s sensors integrated with FileMaker.

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

 

DownloadDownload FileMaker Go Sensor Database

Please complete the form below to download your FREE FileMaker database file.

]]>
FileMaker Server 17 Admin Console https://dbservices.com/articles/filemaker-server-17-admin-console/ Tue, 15 May 2018 13:04:31 +0000 https://dbservices.com/?p=8625 FileMaker Server 17 Admin Console

FileMaker Server 17 has a completely overhauled user interface for the admin console. It’s faster, easier to understand, more powerful, and a whole lot prettier. But beyond these aesthetic improvements FileMaker made quite a few changes under the hood. In this article, we’re going to showcase some of the coolest new features of FMS 17’s Admin Console along with a few tips to help get you started with the new admin console. 

When you open the new admin console for the first time you might feel a wave of relief wash over you. You can relax, this is normal. If you’ve been using FileMaker Cloud, you’ll find the new admin console refreshingly familiar. If you haven’t, you’ll just find it refreshing. Several under-utilized options have been completely removed from the interface and can no longer be configured here. Most of these options can still be configured via the CLI (Command Line Interface). As we go, I’ll indicate a few places where this has happened. 

filemaker server 17 admin consoleThe new UI is easier on the eyes but perhaps the most underrated improvement is the actual writing. Paragraphs have been replaced by shorter, more readable snippets that explain things briefly and in natural language. If you ever rely on help text, you will find that it is quite a bit more helpful now.

Dashboard

The first thing you’ll see after a successful login is the new dashboard. Go ahead and take a moment to bask. You’ve earned this.

When you’re ready, let’s review.

The age-old sidebar has been replaced with a more familiar top-tier nav system.

filemaker server 17 admin console top tier nav

 

 

The redesigned dashboard answers your most pressing questions as soon as you open the admin console.

  • How many files are being served?
  • How many clients are connecting and how?
  • Which of these connections count against my server limit?
  • Are we nearing our limits for connections or API usage?
  • Is the server running out of space, memory, or bandwidth?
  • Are there any important server events that I should know about?
  • What’s my server IP and name?

See that super cool lookin’ graph in the corner? That’s our new activity widget!

filemaker server 17 admin console system statisticsThe console now shows you a graphical representation of your system statistics and how they’ve changed over time (by default the  last 3 minutes).

Backups

Perhaps the most significant advancement in FileMaker Server 17’s Admin Console is its new backup features and options. The new admin console gives you more control over how your backups are managed, protected, encrypted, and created. The new backups are now independent from other types of schedules and you can run a backup without having to create a server schedule.

Automatic Backups

FileMaker now automatically backs up all databases once a day and keeps the last seven backups.

Want to customize that schedule? Too bad, it’s automatic. This default schedule cannot be changed, disabled, worked around, or ignored. So the good news is that these backups happen automatically and they can’t be disabled or turned off!

Yes, you can still create your own backup schedules here too.

Back Up Now

Great life advice. Also, a new feature!

We have On-Demand backups! Click the “Back Up Now” link to immediately back up any files being hosted.

filemaker server 17 admin console-on demand backup button

 

 

 

By default, any On-demand backups are “protected” and cannot be deleted from the admin console (but don’t rely on this, see below).

Manage and Preserve Backups

You can use this new backups tab to manage the actual backups themselves too! All of your system backups are referenced here. You can delete, organize, and label your backups.

FileMaker Server 17 will also let you preserve a backup, allowing you to keep it indefinitely. By default any On-Demand backups are preserved. 

filemaker server 17 admin console preserved backupsIf you want to delete a preserved backup, navigate to the preserved backups tab and you’ll be able to delete them after a double confirmation.

If you delete the backup directly from the File Explorer (Windows) or Finder (Mac), the backup will still show up in the admin console list until you delete it through the admin console. In other words FileMaker isn’t storing a live link to the file, so best practice is to delete the backup from the admin console.

Backups: Other Cool Stuff

  • You can label your backups now! Doesn’t change the file name but categorizing can help keep you organized.
    filemaker server 17 admin console edit backup label
  • Progressive backups can be enabled here and the default interval is 5 minutes. You can change the interval using the fmsadmin command through the CLI.

Other Notable Changes

  • FMS no longer supports admin groups. Instead, you can configure a single admin username and password from the administration tab
  • You can now store your encrypted databases in a separate folder dedicated to secure storage. Only secure databases can be placed here.
    • Configure this in the “Folders” section of the “Configuration” tab.
      filemaker server 17 admin console secure storage folder
    • The default folder will allow either encrypted or unencrypted files

In Closing

I hope you’re as excited about the new FileMaker Server as I am! The new user interface will give our eyes a good time, the backups will keep our data intact, and the new console structure will speed up our work by showing more relevant options.

If you’ve got a copy of server and want some awesome databases to host there, give us a call!

]]>
FileMaker Current Found Set Portal https://dbservices.com/articles/filemaker-current-found-set-portal/ Tue, 15 May 2018 13:03:18 +0000 https://dbservices.com/?p=8930 FileMaker Current Found Set Portal

With the addition of the Current Found Set Portal, FileMaker has added the ability to easily create one of the most common trends in modern applications – the Master Detail.

The Current Found Set portal is a portal that displays a list of the records in the current found set. It updates as the found set changes, and allows the user to navigate between records in the set simply by clicking on them in the portal.

The power and elegance of the Master Detail lies in giving you the ability to quickly choose between a list of options and instantly bringing up the detailed information associated with it without changing windows or views. This allows the user to quickly scan a set of data and navigate through it without having to reload new pages or windows.

What is a Current Found Set Portal?

FileMaker’s solution to the creation of a Master Detail is through an old stand-by: the portal. However, this portal is special. Instead of referencing a related table, this portal references the current found set. This allows the developer to create a list of the set of records the user is currently looking at on a form view layout. That means, instead of needing to create a list view layout to scroll through a list of customers, you can look through your Master Detail list on a form view layout.

Even more useful is that FileMaker has included the ability to click on a record in the portal and have FileMaker navigate to that record within the found set, no additional scripting required. You can now navigate to the customer you were looking for without losing your place in the customer list or even leaving the list at all. No more need to navigate between a list view and a form view to search through records.

filemaker current found set portal master detail

How to Make a Current Found Set “Master Detail” Portal

Creating a Current Found Set portal is much like creating any other portal. Using the portal creation tool, you create the outline of the portal you want and once you release the mouse, you will be prompted to “Show records from:”. You simply select “Current Table ([Table Name])”. Most of the portal options you would usually have (like sorting and filtering) are disabled in the Current Found Set portal – giving you even less to set up. To achieve those effects, you need to sort and filter the found set itself since the Current Found Set portal will only show records from that found set.

filemaker current found set portal setup

Using Current Found Set Portals for Clear Find Requests

FileMaker’s ability to make find requests can occasionally pose a challenge for  some users who may be new to the system or don’t often do manual finds. Especially the concept of and/or finds. One of the interesting use cases for the Current Found Set portal, is it’s ability to track find requests. The portal will display one row for each find request made, just like it would if you were creating new records in a table. This makes it much easier to read the requests made, especially if there are a number of finds that need to be executed at once.

filemaker current found set portal find mode

Wrap Up

Creating a Master Detail with FileMaker’s Current Found Set portal is a great way to modernize your application, and make things easier and faster for the people using the system. Users who find the list view cumbersome to use and avoid their list screens may find that a well-placed Master Detail portal allows them to do their work more efficiently and intuitively. Users will no longer have to navigate between two different views to click through a series of records – they can stay on their screen and in their rhythm. This is especially useful in the modern era, when Master Details show up in many applications users are already familiar with.

While the Master Detail does not sound the end for list views entirely (which are still very useful for reports and other goals), the Master Detail does mean that many list views can be replaced with a view that works better for users. Contact us if you would like some help leveraging the power of Master Details in your system.

Did you know we are an authorized reseller for FileMaker Licensing?
Have any additional questions regarding licensing?
Contact us to discuss FileMaker and to get the best licensing.

Download FileMaker HubspotDownload FileMaker Current Found Set Portal Example

Please complete the form below to download your FREE FileMaker database file.

]]>
FileMaker Add-On Tables https://dbservices.com/articles/filemaker-add-on-tables/ Tue, 15 May 2018 13:02:15 +0000 https://dbservices.com/?p=8619 FileMaker Add-On Tables

Creating a new app can be a daunting task for developers, especially those who are just starting out. Fortunately, FileMaker has made it easy to build something new without needing a working knowledge of relational graphs. Creating from the App Library (aka Add-On Tables) allows developers to import modules directly into their application with pre-built tables, fields, and relationships using just a few clicks of the mouse.

How It Works

To import an add-on table to a FileMaker application, first add a portal to the layout you want to have the module show up on. Under portal setup, click “New Add-on Table” under the “Show records from” drop-down menu, and choose from one of 11 different types of tables. Each type of table has its own set of associated fields to allow the user to add relevant information to each record being created.FileMaker Add-On Tables ListWhen a type of table has been chosen and named, the portal will appear on the layout with all of the relevant fields included. This feature also includes a button, complete with a script used to add new records to the portal for extreme ease-of-use.

FileMaker Add-On Tables Attachment Table

FileMaker Add-On Tables Attachments Table

At the same time, a table is created in the relationship graph linking the relevant field from the base table to the relevant field of the new table (In many cases, this would be the primary key of the base table to the foreign key of the new table) saving the user both the time and the trouble of having to create the relationship themselves.

FileMaker Add-On Table Relationship Graph

FileMaker Add-On Table Relationship Graph

Pro Tip: Add your portal outside of the layout at the top so that you can easily find the new record button that FileMaker automatically adds at the bottom of the portal.

Conclusion

While these add-on tables and portals are not intended as replacing fully finished apps, or replacing the need to use the relationship graph at some point, they are a great foundation for any user. These templates save the user plenty of time and give them a much simpler way to understand the power of relational data and helps in learning how tables interact with one another.

 

Did you know we are an authorized reseller for FileMaker Licensing?
Have any additional questions regarding licensing?
Contact us to discuss FileMaker and to get the best licensing.

]]>
FileMaker Data Migration Tool https://dbservices.com/articles/filemaker-data-migration-tool/ Sat, 12 May 2018 13:01:21 +0000 https://dbservices.com/?p=7898 FileMaker Data Migration Tool

It’s best practice to work on a sandbox version of a FileMaker database, but historically the FileMaker platform did not offer an out-of-the-box tool to migrate data from a live solution to a new version. This means that developers were encouraged to work on live files or build custom migration scripts; both of these options increase costs, cause significant downtime for maintenance, and disrupted live users. Fortunately, FileMaker now offers a data migration tool that migrates data from one file to another with speeds around 10x faster than a custom script. To make this process easier, we have created a helper file (download link below) that allows you to run automatically run data migrations for multi-file solutions.

Basic Requirements

A FileMaker Developer Subscription is required to download the data migration tool.

Once the tool is downloaded, you will need two more things: an .fmp12 file with the data you want to transfer (the source file), and a clone of the .fmp12 file you want to transfer that data to (the clone file). Once you have those, you need to make sure the following conditions are met:

  • The cloned file doesn’t have any records in it.
  • All the files involved are closed.
  • You have local access to the files with full access accounts and encryption passwords (if applicable).

Creating the Command

With the basic requirements in place, you can begin creating the command that migrates the data. The syntax, taken from FileMaker’s official documentation, is as follows:

FMDataMigration 17.0.1 (xx-xx-2018)
Description: Migrates all record data from a source FileMaker Pro file to a copy of a clone file.
Usage: FMDataMigration -src_path <path> -clone_path <path> [<other options>]
-src_path <source file path>
-src_account <source Full Access account> (default is Admin)
-src_pwd <source Full Access password> (default is blank)
-src_key <source decryption key>
-clone_path <clone file path>
-clone_account <target Full Access account> (default is Admin)
-clone_pwd <target Full Access password> (default is blank)
-clone_key <target decryption key>
-target_path <target file path> (default is source path with " migrated" added)
-v (verbose mode)
-q (quiet mode)

When actually creating your command, you will want to put all of the parameters on the same line. So it will actually look more like this:

'/Users/username/Desktop/Data Migration Tool/FMDataMigration' -src_path 
'/Users/username/Desktop/Data Migration Tool/Source File.fmp12' -src_account 'Admin' -src_pwd 'password' 
-src_key 'decript_key' -clone_path '/Users/username/Desktop/Data Migration Tool/Data File.fmp12' 
-clone_account 'Admin' -clone_pwd 'password' -clone_key 'decript_key' -target_path 
'/Users/username/Desktop/File With Migrated Data.fmp12' –v

Once your command is created, paste it in either Terminal (Mac) or Command Prompt (Windows), and press enter.

A few notes about parameter values:

  • If you decide to specify a target path, it must be different than the source and clone paths.
  • If a file already exists at the specified target path, the data migration tool will stop you from executing the command.
  • Verbose mode will display all information about the data transfer and in the command module, and quiet mode will display nothing.

If you don’t want to type all of this information out in a command prompt, you can use our helper file (download link below). Using the helper file, you can easily run a data migration for multi-file solutions.

What Transfers Over

After you successfully run the migration, a new file will be created. The new file will have the schema of the clone, and the data from the data file. The data carried over from the data file will be the:

  • FileMaker accounts
  • Records
  • Next serial numbers
  • Indexes
  • Internal Record IDs, aka Get( RecordID ) for each record will be transferred over
  • Custom value lists that have been modified

All other information (privilege sets, layouts, table occurrences, etc.) will be inherited from the clone. Furthermore, only modified value lists with custom values will be transferred into the new file from the data file. Value lists not in the clone will not be created in the new file, and value lists using table occurrences will be inherited from the clone.

While FileMaker accounts transfer over, privilege sets do not. Any accounts that are given a privilege set not in the clone will be given an empty privilege set called “Unmapped Privilege Set”.

FileMaker Unmapped Privilege Set

If you create fields, tables, or table occurrences in the source database after making the clone, these will not be created in the new file. Any data in these fields will not be transferred over. Also, using the data migration tool does not fire auto-enters.

Field Mapping

When transferring the data over to the new file, the data migration tool will try to map the fields by name first, then by FileMaker’s internal ID. This means that if you change the name of a field in the source file after making the clone, it will still map those two fields together. However, if you change the name of a field, then create a new field and give it the old name of the first field, the data will be transferred to the new field instead of the first field.

Conclusion

FileMaker’s data migration tool is the easiest and quickest way to transfer data from a live database to an updated version. Utilizing this tool correctly can save both time, money, and the headache that can come with live development. Feel free to contact us if you need any further assistance or if you would like to discuss getting your data transferred.

 

DownloadDownload FileMaker Data Migration Helper File

Please complete the form below to download your FREE FileMaker database file.

 

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

]]>
FileMaker EDI Integration https://dbservices.com/articles/filemaker-edi-integration/ Wed, 18 Apr 2018 13:12:41 +0000 https://dbservices.com/?p=8386 FileMaker EDI Integration

Electronic data interchange (EDI) is used by businesses to electronically exchange standard business documents. EDI standards help reduce cost of processing email or mail-in orders and can speed up business by simplifying communication between two companies. Amazon, Walmart and many other companies use established EDI standards to process their orders securely.

Supply Chain Insights published a study showing that 55% of customer orders are received via EDI, placing EDI on the #1 spot of multi-party business exchanges. Integrating EDI with your FileMaker solution can automate your order processing and allow you to connect to large retail partners using this technology.

EDI Standards

Handling EDI can be tricky when there’s multiple standards in play and with retailers having different sets of fields they require in order to process requests. EDI platforms like SPS Commerce can help you figure out the required fields for a particular document and industry, and translate a simpler XML format provided by the platform to the actual standard’s format.

To illustrate how complex a standard’s format can be, and why platforms like SPS Commerce provide XML versions of these complex formats, below is an example of a purchase order written in EDIFACT EDI standard.

UNB+UNOA:1+US::US+50138::THEM+140531:0305+001934++ORDERS'
UNH+1+ORDERS:91:2:UN'
BGM+220+A761902+4:20140530:102+9'
RFF+CT:EUA01349'
RFF+AAV::C'
TXT+THIS IS WHAT AN EDI MESSAGE WOULD LOOK LIKE... '
NAD+BY++OUR NAME PLC::::+++++EW4 34J'
CTA+PD'
COM+01752 253939:TE+01752 253939:FX+0:TL'
CTA+OC+:A.SURNAME'
COM+2407:EX'
CTA+TI+:B.BROWN'
COM+0:EX'
CTA+SU'
COM+0161 4297476:TE+01752 670633:FX'
UNT+15+1'
UNZ+1+001934'

And below a purchase order document like above but written in XML format:

<PurchaseOrders> 
<PO> 
<ID>123</ID> 
<date>4/3/2018</date> 
<customer>DB Services</customer> 
<firstName>Gayoung</firstName> 
<lastName>Moon</lastName> 
<email>gmoon@dbservices.com</email> 
<item>Sunglasses</item> 
<price>200</price> 
<quantity>1</quantity> 
</PO> 
<PO> 
<ID>234</ID> 
<date>4/4/2018</date> 
<customer>DB Services</customer> 
<firstName>Test</firstName> 
<lastName>Customer</lastName> 
<email>gmoon@dbservices.com</email> 
<item>Desk</item> 
<price>400</price> 
<quantity>3</quantity> 
</PO> 
</PurchaseOrders>

Not only is the XML version easier to read and follow, it’s much easy to program, especially considering that one EDI document can have thousands of possible fields to pick from, as EDI is used across almost every industry.

General Approach to EDI Integration as a Vendor

EDI platforms like SPS will require that you read or write XML files from an FTP server they provide. In the case of handling purchase orders from a retailer like Target, your FileMaker system will need to periodically scrape the FTP server’s purchase orders folder for all new PO documents, import them into your FileMaker system, and delete them from the folder. Then you will parse each PO XML document in FileMaker and create or update purchase orders in your database. For example, you could use the xmlGetElement function from the demo file to parse the purchase order XML.

Set Variable [ $ID ; Value: xmlGetElement ( $eachPO ; "ID" ) ]
Set Variable [ $date ; Value: xmlGetElement ( $eachPO ; "date" ) ]
Set Variable [ $customer ; Value: xmlGetElement ( $eachPO ; "customer" ) ]

If your retailer requires it, you will also create an purchase order acknowledgement notice XML file and upload it to the FTP server in a different folder. The insert from URL cURL options would look something like this:

"--user " & $user & ":" & $pwd & " --ftp-ssl" & 
" --upload-file $xmlfile --header \"Content-type: application/xml\""

As your employees process new purchase orders, statuses of each purchase order will change and your FileMaker system will need to create another type of EDI XML document with all active purchase order status and shipping information. This document will then be uploaded to the corresponding location on the FTP server.

In addition some retailers require frequent updates on your inventory levels, which is another type of EDI document, called an inventory query document, that you will need to create create and upload to the FTPS server.

Check out the demo file below to see simple EDI examples. The file uses the native FileMaker Insert from URL script step to connect to FTP and BaseElements plugin to parse XML documents.

Conclusion

If you want to work with retailer giants like Walmart, Target, etc, you will be required to process orders using EDI. And handling orders this way can allow your company to work on them real time and cut down on time spent manually communicating your inventory and order status. Contact us if you need help with integrating your FileMaker system with an EDI platform.

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

DownloadDownload FileMaker EDI Integration

Please complete the form below to download your FREE FileMaker database file.

]]>
FileMaker HubSpot Integration https://dbservices.com/articles/filemaker-hubspot-integration/ Wed, 21 Mar 2018 13:46:24 +0000 https://dbservices.com/?p=8262 FileMaker HubSpot Integration

HubSpot is an online marketing and sales tool that helps convert leads and close customers. HubSpot reported that total revenue was $375.6 million in 2017, up 39% compared to 2016. Many companies with both HubSpot and FileMaker find themselves ending up having to do double data entry from one system to the next. We will demonstrate how you can eliminate the hassle of manually copying the information by integrating your FileMaker solution with HubSpot.

Creating a Free HubSpot Developer Account

The first step of this integration is to create a HubSpot developer account. Once you have an account, you will then need to create a new public HubSpot application. Under the application details, at a minimum for our example you will need to check the Basic OAuth functionality and Contacts options.

Hubspot Developer Account Setup

Those will allow you to use the OAuth authentication and interact with the end user’s HubSpot Contacts. Also, copy the Client ID and Client Secret from the application. You will need this information later.

Hubspot LogoAuthenticating with HubSpot Using OAuth 2.0

Once you have your API information, you will need to authenticate your solution with the HubSpot API. For any questions regarding how requests should be built, please reference the HubSpot API Documentation. To authenticate your solution, place the user into a web viewer at the API authentication screen. This will prompt the user to log in with their own credentials and choose the account to allow your solution to make the connection.

FileMaker HubSpot Authentication

Once they have agreed, they will be sent to the address specified in your Redirect URI that was passed in the authentication request. When the user is redirected to the new address, the address will now have a URL Encoded parameter, which will be the code needed for the next step.

Set Variable [ $code ; Value: "https://dbservices.com/?code=058baec5-cfd7-42ae-b3ea-c0683fa4b6b5" ]

Once you have extracted the code, you will use the code provided, along with your ID and secret to get your access token which will be used to make any API requests.

Making Requests and Parsing the Response

Many of the HubSpot API requests require additional parameters. The Create Company request, for example, is a POST request which requires additional fields like the company, description, and many other optional settings for the company. These fields will need to be JSON-encoded text, passed as the parameter.

Set Variable [ $cURL ; Value: "-X POST
                               --header \"authorization: Bearer 
                               --header \"accept: application/json\"
                               --header \"content-type: application/json\"
                               --data @$data" ]
Insert from URL [ Select ; With Dialog: Off ; $result ; "https://api.hubapi.com/companies/v2/companies" ; $cURL ; Do not automatically encode URL ]

Once a successful request has been made, a JSON encoded response will returned. You will then be able to use the function JSONGetElement () to pull any information out of the response that you wish.

{
	"additionalDomains" : [],
	"companyId" : 725558396,
	"isDeleted" : false,
	"mergeAudits" : [],
	"portalId" : 4332469,
	"properties" : 
	{
		"createdate" : 
		{
			"source" : "API",
			"sourceId" : "API",
			"timestamp" : 1520270442248,
			"value" : "1520270442248",
			"versions" : 
			[
				{
					"name" : "createdate",
					"source" : "API",
					"sourceId" : "API",
					"sourceVid" : [],
					"timestamp" : 1520270442248,
					"value" : "1520270442248"
				}
			]
		},
		"description" : 
		{
			"source" : "API",
			"sourceId" : null,
			"timestamp" : 1520270442248,
			"value" : "Database Services",
			"versions" : 
			[
				{
					"name" : "description",
					"source" : "API",
					"sourceVid" : [],
					"timestamp" : 1520270442248,
					"value" : "Database Services"
				}
			]
		},
		"hs_lastmodifieddate" : 
		{
			"source" : "CALCULATED",
			"sourceId" : null,
			"timestamp" : 1520270442248,
			"value" : "1520270442248",
			"versions" : 
			[
				{
					"name" : "hs_lastmodifieddate",
					"source" : "CALCULATED",
					"sourceVid" : [],
					"timestamp" : 1520270442248,
					"value" : "1520270442248"
				}
			]
		},
		"name" : 
		{
			"source" : "API",
			"sourceId" : null,
			"timestamp" : 1520270442248,
			"value" : "DB Services",
			"versions" : 
			[
				{
					"name" : "name",
					"source" : "API",
					"sourceVid" : [],
					"timestamp" : 1520270442248,
					"value" : "DB Services"
				}
			]
		}
	},
	"stateChanges" : []
}

For example, you can get the newly created company ID by using the following set of functions:

Set Variable [ JSONGetElement ( $result ; "companyId") ]

Conclusion

Integrating your FileMaker app with your existing HubSpot account will greatly improve your business’s efficiency. You can create, update, query, or delete just about any entity you would like all from within FileMaker. Feel free to contact us if you need further assistance or to discuss getting your HubSpot account integrated with FileMaker.

Are you stuck and need help with your integration? Contact us for support!

Download FileMaker HubspotDownload FileMaker HubSpot Integration Database

Please complete the form below to download your FREE FileMaker database file.

]]>
Google Charts in FileMaker https://dbservices.com/articles/google-charts-in-filemaker/ Wed, 21 Feb 2018 14:54:14 +0000 https://dbservices.com/?p=8151 Google Charts in FileMaker

FileMaker Google ChartsFileMaker offers many different options for charting, but if you need a chart that is not available in FileMaker, you should consider using Google Charts. Google Charts is a free Javascript framework that can be used in conjunction with web viewers in FileMaker to extend your charting capabilities. Since native FileMaker charting is much quicker and simpler to set up, let’s look at some Google Charts.

Only Available in Google Charts

  • Geographic
  • Candlestick
  • Organizational
  • Treemap
  • Gauge
  • Timeline

Geographic

This chart offers both a quick overview for an entire geographic region as well as discrete values per region. For example, if Finance needs a way to quickly view sales per state, the Geographic Chart can quickly show us that sales in Illinois are the highest. You can then hover over each state to see how much was sold in each.

FileMaker Geographic Chart

When driving this chart with data from a FileMaker system, users can view a map rich with information at the click of a button.

Candlestick

With the candlestick chart, you can quickly view a range of values along with its variance. It normally shows financial movements in price or cost. In this example, shaded boxes represent a gain and unshaded boxes represent a loss.

FileMaker Candlestick Chart

Source: https://developers.google.com/chart/interactive/docs/gallery/candlestickchart

Organizational and Treemap

The next two charts help with viewing a tree data structure. First, the Organizational Chart shows a hierarchy of discrete data. Businesses often use this chart to show a literal hierarchy. This chart doesn’t have too many options, but a developer can configure options such as size, color, or clicking on a cell to collapse.

FileMaker Organization Chart

Source: https://developers.google.com/chart/interactive/docs/gallery/orgchart

On a treemap, a user can only view one level at a time, but can navigate to each level. Though this graph also maps discrete values, developers can utilize this graph to show a visual summary of values associated with these discrete values. For example, this chart can show that sales in the USA are somewhere around twice as much as those in Mexico (see chart below).

FileMaker Treemap Chart

Source: https://developers.google.com/chart/interactive/docs/gallery/treemap

Gauge

Applications can utilize Google’s Gauge chart for a fun way to show “safe” and “dangerous” values. It offers the quick visuals of a 19th century railway gauge with all the customization one could desire! Developers can set coloring for ranges of values, specify minimum and maximum values, and even utilize animations to make the gauges more life-like. This chart could be used on an executive’s dashboard to show actual revenue versus expected revenue.

FileMaker Gauge

Timeline

The last Google Chart I’ll be covering is the Timeline chart. It helps view data associated with a range of time, reducing the amount of headache needed to process historical data. For example, some bands have an impossible amount of lineup changes, but using a Timeline can quickly clear up any confusion (unless you’re AC/DC and have over 10 former members).

Timeline Chart

Adding Google Charts to a FileMaker System

Google Charts also has some potentially useful options when it comes to simple graphs. Let’s look at adding a trend line on a scatterplot graph using Google Charts in FileMaker.

Chart With Trend Line

Creating a Trend Line on a Scatterplot Chart

The Google Charts documentation offers a quick and easy way to start creating your own chart by providing code examples. The Google Charts framework has a couple of basic parts for each chart. The initial setup includes the following code:

<script type='text/javascript' src='https://www.gstatic.com/charts/loader.js'></script>
<script type='text/javascript'>
google.charts.load('current', {'packages': ['corechart']});
google.charts.setOnLoadCallback(drawChart);

Notice that the “google.charts.load” step includes packages; in this case the package “corechart”, which is a scatterplot chart. This is the main differentiator between charts. Changing the package to “geochart” would completely change the graph type.

The next step is setting up the drawChart() function. This tells Javascript what data to draw and what options to use. All the data points are in the array variable “data”.

function drawChart() {
	var data = google.visualization.arrayToDataTable([
		['Year', 'Price'],
		[2010, 12000],
		[2017, 35000],
		...
	]);
	var options = {
		title: 'Sale Price by Model Year',
		hAxis: {
			title: 'Year', format: '', minValue: 2000, maxValue: 2018, direction:-1,
			minorGridlines: {color: '#333', count: 1}
		},
		legend: 'none',
		...
	};
};

Lastly, Javascript needs to draw the chart. The following code assumes that there is a <div> with the ID “chart_div” in the HTML.

var chart = new google.visualization.ScatterChart(document.getElementById('chart_div'));
chart.draw(data, options);

Using this as a template, all your FileMaker application needs to do is compile data points and insert them into the “data” variable, making sure they are in the same array format. Nothing else in the chart needs to be data-driven, though you can let users edit any options they need to.

Using FileMaker to Plot Data

Of course, the big question is “How do I get my data from FileMaker onto a Google Chart?” As alluded to previously, we can use FileMaker scripting to insert data points into the Javascript in your web viewer. Please refer to the demo file for more details on how this process works.

Conclusion

Using Google Charts, you can extend FileMaker’s charting capabilities with complex charts such as Timeline or Geographic charts. All it takes is a web viewer and a bit of Javascript know-how.

Javascript not your thing? Contact us to help put Google Charts in your FileMaker system.

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

DownloadDownload Google Charts in FileMaker Database

Please complete the form below to download your FREE FileMaker database file.

]]>
FileMaker Cloud 16 https://dbservices.com/articles/filemaker-cloud-16/ Wed, 17 Jan 2018 12:37:17 +0000 https://dbservices.com/?p=7987 FileMaker Cloud 16

filemaker cloudWith the release of the FileMaker Cloud 1.16, several features that were exclusive to on-premise FileMaker Server are now available. The 1.16 update includes, but is not limited to, the features listed below.

  • Server Side Scripts with the FileMaker Admin API
  • Custom Web Publishing with the FileMaker Data API
  • PDF and print support
  • JSON Parsing
  • OAuth 2.0 client authentication

Server Side Scripts

The release of the FileMaker Cloud Admin API now allows you to manage server-side schedules, pull a list of logged-in users, send messages to connected users, and much more. Our free FileMaker Cloud Schedule Manager allows you to create and manage script schedules for your FileMaker system.

To download our FileMaker Cloud Schedule Manager or read more about what all it can do, see our FileMaker Cloud Admin API Article.

Custom Web Publishing

The FileMaker Data API, which was formally only available for FileMaker Server, allows you to access your FileMaker data using the standard REST API. By going with a standardized format developers are able to integrate any platform they choose with FileMaker solutions on FileMaker Cloud.

Details on enabling and using the data API can be found at our FileMaker Data API Article.

PDF and Print Support

FileMaker Cloud now enables the use of the Print, Print Setup, and Save Records as PDF script steps on both FileMaker Pro and FileMaker WebDirect.

JSON Parsing

JSON (JavaScript Object Notation) is an open-standard file format that allows developers to interact with REST APIs without using a plugin. FileMaker Cloud now supports JSON parsing for server side scripts.

For more details on using JSON with FileMaker please read our FileMaker JSON Functions Article.

OAuth 2.0 Client Authentication

FileMaker Cloud now supports OAuth 2.0, which allows clients to authenticate via Amazon, Google, and Microsoft Azure. Configuration for OAuth identity providers can be found in the Client Authentication section under the configuration tab on the FileMaker Cloud Admin Console (shown below)

 

FileMaker Clien Authentication Configuration

A FileMaker Pro client must be used to configure specific users’ accounts to authenticate via an identity provider. This setting is found under:
File -> Manage Security -> highlight desired account -> Edit…

filemaker server oauth choices

Comparing Cloud 16 to Original Release

Since the initial version of FileMaker Cloud, many updates have brought Cloud up to par with FileMaker Server. FileMaker Cloud now includes the following features that were not available with the initial launch:

  • On-demand backups
  • Uploading unencrypted FileMaker files
  • Restoring individual data files from a snapshot
  • AWS solid state hard drives (SSD)
  • Increased number of AWS regional endpoints

Unsupported Features in FileMaker Cloud

The 1.16.0.55 update brought FileMaker Cloud to near parity with FileMaker Server; however, there are three features FileMaker Server supports, which are currently unsupported for Cloud.

  1. Custom Web Publishing with PHP and XML is currently unsupported; however, the FileMaker Data API, which is now available for cloud, eliminates the need for this feature.
  2. Local Active Directory integration. Although Cloud now supports Microsoft Azure Active Directory, it does not support authentication via active directories that exist within your network.
  3. Compatibility with FileMaker Pro 14 and 15. FileMaker Cloud 16 is currently only compatible with FileMaker 16 clients; however, FileMaker Server 16 is compatible with FileMaker 14, 15, and 16 clients.

Backups

Cloud backups run on a 20 minute schedule and one week’s worth (504) are stored before automatic deletion begins; however, preserved backups are not deleted. Backups can be run on demand and preserved at any time as shown in the image below.

As shown in the graphic above, backups are accessed through the “Backups” section of the Cloud admin console. From here users may request an on-demand backup, which is then automatically preserved. Snapshots can then be attached to preserved backups, allowing the database files to be downloaded as needed. Only one snapshot can be attached at a time, but users may download specific database files as opposed to downloading every file hosted on the server.

Uploading Unencrypted Files

Unencrypted files can now be uploaded to FileMaker Cloud from a Pro client. Once uploaded, FileMaker Cloud will request an encryption password and encrypt the file itself, saving users the time of encrypting their files through their Pro clients. It is important to note that in order to upload an unencrypted file to Cloud, you will need to have at least three times the file size in space available to upload. The total space available can be viewed from the Dashboard section of the admin console. If you don’t have that much space available, you may upgrade the AWS storage volume size at any time through the Subscription section of the admin console.

FileMaker Cloud AWS Region Support

FileMaker Cloud can now be set up on the following AWS regions:

  • US East (Northern Virginia)
  • US West (Oregon)
  • Canada (Central)
  • EU (Ireland)
  • EU (Frankfurt)
  • Asia Pacific (Sydney)
  • Asia Pacific (Tokyo)

All FileMaker Cloud disk types have been changed from magnetic to solid state drives (SSD), increasing overall speed.

Moving to FileMaker Cloud

For details on moving your existing system to FileMaker cloud, please read the “Moving to FileMaker Cloud” section of our FileMaker Cloud Overview Article.

Conclusion

With this update, the full power of FileMaker Server is now available in the cloud.  If you’re interested in seeing if FileMaker Cloud is the best choice for you, contact us for a free technical analysis to review and assist in optimizing your application(s) before moving to the FileMaker Cloud.

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

]]>
FileMaker Cloud Schedule Manager https://dbservices.com/articles/filemaker-cloud-admin-api/ Wed, 13 Dec 2017 11:17:24 +0000 https://dbservices.com/articles/filemaker-business-intelligence-using-tableau-copy/ FileMaker Cloud Schedule Manager

With the release of FileMaker Cloud Admin API, you can now monitor and manage multiple servers quickly and easily, including the ability to set up server-side schedules, pull a list of logged in users, send messages to connected users, and much more. Download our free FileMaker Cloud Schedule Manager too!

Let’s take a look at the API and how to use it.

Using the API

The FileMaker Cloud Admin API uses a standard REST API which allows you to gather info and interact with your server and the files on the server. Some of the things you can do with the API are listed below.

  • Create, edit, delete server side schedules
  • Get a list of schedules
  • List all databases
  • Open, Close, Pause, or Resume a database
  • Disconnect clients
  • Send a message to clients

More info on how to interact with API can be found in the FileMaker Cloud 16 Admin API Guide.

Creating Schedules

FileMaker Cloud Schedule SetupMost of the functions in the API are already available from the FileMaker Cloud Admin Console, but at the moment the only way to create schedules is through the new API. This can be a frustrating process as there are so many different flags and types that must be set by number and all the validation required to create them correctly. Lucky for you we’ve created a free file for managing schedules on your FileMaker Cloud Server.

FileMaker Cloud Schedule Setup

Security

Please ensure that you encrypt this file before use as it does store username and password information needed to access the admin console and FileMaker files. At the moment there is no good way to exclude this information, and the Admin API returns file credentials in the schedules’ rest calls. Also make sure to add a full access account with a strong password and disable the default admin account.

Conclusion

The FileMaker Cloud Admin API allows you to easily manage multiple cloud servers from one interface. If you want a private server with easier setup and management, excellent network speeds, automated security updates and much more then FileMaker Cloud is a great way to go. We’re super excited about the direction of FileMaker Cloud and believe that this is the future of hosting FileMaker applications.

Did you know we are an authorized reseller for FileMaker Licensing?
Contact us to discuss upgrading your FileMaker software.

DownloadDownload FileMaker Cloud Schedule Manager

Please complete the form below to download your FREE FileMaker database file.

]]>