Category Archives: Blog

  • 0

FileMaker Portland – Integrating Web Services

Tags : 

Thank you to everyone who attended the January FileMaker Portland meetup. The evening was packed with presentations about how people are leveraging FileMaker 16’s JSON support to connect to web services.

Some of the integrations we discussed were:

  • Magento – This popular e-commerce platform has REST and SOAP APIs. Use them to connect data about products, customers, and orders to FileMaker.
  • SmartyStreets – Supercharge your address entry fields with five different APIs.
  • Google Charts – A Javascript library for creating interactive HTML5/SVG charts.
  • FileMaker – Why not the other way around? Make POST, GET, PUT, and DELETE calls to FileMaker using the Data API.

Have something you’d like to share or discuss with other FileMaker developers? Consider attending the next meetup.

  • 0

FileMaker Academy: JSON and Multiple Script Parameters

On Tuesday, January 23, Rohit Roy from IT Solutions presents FileMaker JSON and Multiple Script Parameters.

Short for Javascript Object Notation, JSON has quickly become a web standard. Since FileMaker 16 gave us new functions to easily implement JSON into our code, many developers are switching to JSON as a native method to support multiple script parameters. In the first half of this webinar, we will cover the basics of JSON and the new FileMaker JSON functions. In the second half, we will learn how to use JSON to pass multiple script parameters without plugins or custom functions!

Date: Tuesday, January 23
Time: 2:oo – 3:00 pm ET / 1 pm CT /  11 am PT
Register Now! 



  • 0

Generating Google Charts in Web Viewer

Tags : 

Google deprecated Google Image Charts in 2012. While that API can still be used to create charts with a URL, Google currently recommends that people use the similarly named Google Charts. This blog post will go over how to format data for the Google Charts library and generate a chart within a Web Viewer object.

Classic vs Material

Google Charts offers two versions: Classic and Material. The two versions differ in how charts look and feel, and how customization options are defined. Material charts are redesigns of core charts that follow Material Design guidelines. They offer marked style improvements over Classic charts, and will appear familiar to users of Google products. However, they are currently in beta and do not support all of the features of Classic charts. If you are having trouble implementing a Material chart, make sure that you are not trying to include an unsupported customization option by referencing the open Feature Parity issue.


When you need to use an option that is only available for Classic charts, you can still style your chart like a Material chart by including the “theme : material” option.




Information to be charted must be sent as a DataTable. The simplest approaches to generating DataTables within Web Viewer are by combining addColumn() and addRows(), or by using arrayToDataTable().

The addColumn() method requires either a type, or an object describing the column’s type and role. You can optionally pass labels as parameters as well.

In the example below, the x and y axes of a scatter plot are defined by calling data.addColumn(‘number’, ‘Revenue’) and data.addColumn(‘number’, ‘Gross Margin’). The third column is a tooltip, which displays when a user hovers over a datapoint.

Material-Themed Scatter Chart


The addRows() method accepts a nested array as a parameter. In the above example, a FileMaker script was used to assign a list of arrays to global variable $$A. When inspected using Data Viewer, $$A looks like this:


While these two methods do the job, if you are adding more than a few columns it will likely be more helpful to use arrayToDataTable(). This method converts a nested array to a DataTable and can infer the data types of each column, meaning you do not need to manually define them using addColumn().

Material Bar Chart


The global variable $$B referenced in the above code was generated using a FileMaker script and looks like this:

Trying It Out

  1. Add a Web Viewer object to a layout and open Web Viewer Setup. Set the website to Custom Web Address and select Specify…
  2. Begin your calculation with the following line: “data:text/html;charset=UTF-8,” & “
  3. Prepare your own html code or sample code from Google’s Chart Gallery in a text editor. Specifically, replace any double quotes within the html with single quotation marks. This makes inserting FileMaker variables and fields into html code easier, since you can define a block of html between double quotes, concatenate a variable or field, then concatenate another block of html between another pair of double quotes.
  4. Following the quotation mark, paste in the prepared html code.
  5. End your calculation with a double quotation mark.


If you’re interested in integrating Google Charts within a FileMaker solution but could use some more guidance, please feel free to contact us. We have experience with various web services, and have even created a free downloadable FileMaker module, fmMapping, using the Google Maps API.

  • 0

Season’s Greetings from AppWorks

Thank you for being a part of our prosperous 2017.

We wish you the same in the coming year!

  • 0

AppWorks Spreads Holiday Cheer with Volunteer Project

To encourage a work-to-live not live-to-work balance, each month AppWorks’ team members engage in a “Project Fun” whereby the staff steps away from the computer and participates in team activities. These activities vary from going to the movies, showing off their athletic abilities while bowling or sharing their love of adventure with indoor skydiving.

In December, the team decided to give back to their local community and spent a few hours volunteering at the Portland Homeless Family Solution (PHFS). The mission at PHFS “is to empower homeless families with children to get back into housing and stay there long-term.” Now that the colder weather is here, AppWorks wanted to show their gratitude for organizations such as this one, that keep families sheltered, fed and together through volunteering.

The AppWorks employees added some holiday cheer while decorating, preparing supplies and creating examples for the craft tables for the annual Holiday Village. The Holiday Village provides dinner with pizza, activity and craft stations, and a visit from Santa Claus for families who have been a part of PHFS’s services in the past year. The party also provides parents an opportunity to pick out and wrap gifts for their families.

AppWorks would like to thank Bethany Rocci, the PHFS Volunteer Manager, for her enthusiasm, dedication and organization of the event.

As stated on their website, the three main programs at PHFS are:
• Housing First Program – PHFS helps families experiencing homelessness move back into housing as quickly as possible. The organization provides rent assistance and case management for 12-24 months to help families keep their housing long-term.
• Shelter – PHFS operates 24 hours of shelter every day of the year for families experiencing
homelessness at Goose Hollow Family Shelter and Thirteen Salmon Family Center. They rely on a team of over 800 volunteers to help provide supportive, compassionate services.
• Life Lab Skills Training – PHFS teaches evidence-based classes to help families learn new tools and skills they can use to help them get and retain housing. Classes include Incredible
Years Parenting, Rent Well Tenant Education, and the ARISE Life Skills Curriculum.

Read more about Portland Homeless Family Solution and how you can get involved at



  • 0

FileMaker Portland – Holiday Potluck

Tags : 

FileMaker Portland would like to thank everyone who feasted at our Holiday Potluck. Plates were stacked high with homemade chili and cornbread, smoked salmon, and three types of sandwiches from Lardo. In between bites, revelers discussed all things FileMaker and toured our new office.

Interested in joining us at our next event? Check out the FileMaker Portland meetup page for more information.

  • 0

Have You Been Wingdinged?

Tags : 


Have your FileMaker layouts miraculously transformed into a collection of nonsensical symbols? Does your data resemble a prehistoric cave painting? If so, you’ve likely been wingdinged. Due to a known FileMaker bug affecting Windows computers running Adobe products, fonts can be replaced with a dingbat-style temporary font. Before translating your application character by character, try following these steps for a quick fix.

The Simple Solution

First close FileMaker completely, then close any open Adobe programs. Next, reopen FileMaker before reopening your Adobe programs. Your FileMaker fonts should now have returned to normal.

Other Things to Try

Keeping Adobe products up to date can potentially help mitigate font-related issues. To make sure you’re running the latest available version, open your Adobe program, choose the Help menu, then select Check for Updates.

There are a few advanced troubleshooting steps available if neither restarting your programs nor updating Adobe restored your FileMaker layouts to normal. Take care while attempting these fixes, as deleting the wrong file can lead to more headaches.

Delete the file “fntcache.dat” located within the C:\Windows\System32 folder, then restart your computer. Your operating system temporarily saves font data to this file. Deleting it and rebooting forces your computer to recreate it, hopefully clearing away any corrupt data.

Close any open Adobe programs, then delete the folder “acrord32_sbx” located within the C:\Users\\AppData\Local\Temp folder. Adobe programs save temporary files to this folder. Recreating it has been known to resolve various Adobe issues.

Hopefully these troubleshooting tips have brought your FileMaker application back from wingdingland. If you’re still running into issues, it may be time to bring in one of our experienced developers to help get things working again. We’re always happy to help, so feel free to contact us!

  • 0

Create native FileMaker apps on Android and iOS with LCFM Native

Tags : 

We’re excited to announce that our friends at LiveCode are organizing a campaign to make FileMaker solutions a native app on Android and iOS with LCFM Native.

Why are we excited about this? Originally, the LiveCode for FileMaker team was focusing on the Android connection, but after feedback from FileMaker groups like PDXFM, they decided to refocus on the native aspect. This move makes the system more robust and more beneficial for the FileMaker community and all mobile users.

How robust and beneficial?

According to the folks at LiveCode, with LCFM Native you’ll be able to:

  • Build beautiful, powerful, flexible native apps from your FileMaker layouts
  • Synchronize data perfectly as your app goes online and offline
  • Deploy to Android, iOS, Windows, Mac and Linux
  • Keep your data within FileMaker server or cloud
  • Access native objects and the operating system on each device
  • Pricing will start from $2
  • Full Money Back Guarantee

Get involved!

You can be a part of this becoming a reality by joining the pre-release program. Participation includes things like access to the beta program. That’s not all – LiveCode is also offering a choice between credit towards licensing payment for the final product or layout conversion done by the makers! Make a pledge before Nov. 24, 2017 to take advantage of these great offers.

Read more about the types of pledges and feature details here.

Want to know more before making a pledge? Join us at the live webinar on Thursday, November 9 at 9 a.m. PST. Register here!

  • 0

Empower Companies with Custom Apps Built by Employees

Tags : 

According to a recent 451 Research Report on State of Custom Apps, 60 percent of all custom apps are being built outside the IT department, which is great for a lot of small business that don’t have IT departments. Even more interesting, is that 30 percent of those custom apps are built by employees with little to no technical development skills. How is this even possible?

Custom apps built by employees with little to know knowledge of technical development skills may sound like a bad idea at first, but if they have a lot of knowledge about the business, and a desire to learn the basics, you’ll soon be surprised at what they can build with tools like FileMaker at their disposal.

At AppWorks, we love empowering our clients with tools they can use to build upon their own custom app. AppWorks believes FileMaker is the perfect platform for this because of it’s low-code tools, and quick build times. Plus, there is a lot of FileMaker training available, whether it’s with a Platinum FileMaker Business member such as AppWorks, or online with FileMaker Custom App Academy, FM Academy, or even This gives companies the opportunity to turn internal problem-solvers into citizen developers who improve the specific needs of the business and help employees start working more efficiently.

  • 0

Card Windows work in WebDirect

Tags : 

Card windows have changed the way I develop. One of our other developers went over the awesomeness of card windows in this blog post, so I won’t rehash that content.

I was, however, incredibly disappointed when I learned that card windows do not function in WebDirect.  Websites are one of the places you see that UI pattern the most!  And now I have to script completely different on the desktop than I do in WebDirect! Darn it!

Except… I don’t have to rescript anything! Any step that I can use to open a card window works just fine in WebDirect.  The difference is, if I open a card window in WebDirect, it will just take up the whole screen.  Other than that, the user experience is almost identical.  Closing the window will leave the user looking at the window they were on before the card window opened. 

WebDirect has always worked like this. We’ve actually had this design pattern in WebDirect longer than we’ve had it on the desktop.  This is because WebDirect only shows one window at a time.  The FileMaker documentation refers to these as “virtual” windows. So, in WebDirect, the active window will always be the only one displayed.  If the active window is closed and there are other virtual windows are open, it will go to whichever window was active before the current one. When you open a window for a picker, it takes up the whole screen. Close it when you’re done picking, and you’re back where you started.  This is exactly how I’ve started doing it on the desktop with card windows.

In the future, I would love to see the dimming effect, close button, and few other card windows’ features make it into WebDirect. In the meantime, I’ve stopped lamenting the lack of card windows and started scripting; secure in the knowledge that what I’m writing will work across all platforms. I also wonder why I didn’t start scripting like this for WebDirect a long time ago!