Aller au contenu
  • billets
    125
  • commentaires
    3
  • vues
    7 129

Billets dans ce blog

 

Extending FileMaker PDF Functionality with DynaPDF Demo

Did you know you can do more with pdfs in your FileMaker solution with DynaPDF? Download our complimentary resource to learn about capabilities with this product. This file contains a simple table containing pictures and images of different types of fruit. It helps you create a listing of each fruit with clickable links to different pages throughout the PDF, demonstrating the capabilities of DynaPDF within your FileMaker solution. Read the blog post…
Complete the form to receive the demo: Trouble with this form? Click here. The post Extending FileMaker PDF Functionality with DynaPDF Demo appeared first on Soliant Consulting.
Voir le billet d'origine
 

How to Use FileMaker 17 to Connect the Data API and Your WordPress Website

Connecting Your WordPress Website and FileMaker Solution In this post, we demonstrate how you can submit a form built with a freely available WordPress plugin, Ninja Forms. This makes building web forms easy while staying compliant with a WordPress theme. This process also supports responsiveness of your WordPress deployment. You do not need access to the backend MySQL database, which is not always easy or available. This makes it very portable and convenient to add as a WordPress administrator. You only need to add a custom action to the Theme Functions ("functions.php") file in WordPress and specify that custom action in your Ninja Forms configuration. Pre-FileMaker Strategy: Custom Web Publishing Previously in FileMaker 16 and prior, you could send data to a CWP (custom web publishing) script that could include the FM API for PHP and use that to insert to your database. This required a web server running PHP, possibly on the same machine where FileMaker Server was running. Simplified Process with the FileMaker Data API That changes in FileMaker 17. Now, you can communicate directly with the newly available Data API to insert a new record in your database with no other pieces needed or external APIs to load. Both methods use a WordPress function, WP_Http(), to make the external requests and submit all form data entered by end users. In WordPress, go to Appearance->Editor, then select the Theme Functions file and insert the following code, with adjustments made to the variables at the top of the function. add_action( 'fm_WordPress_action', 'fm_data_api_form' ); function fm_data_api_form( $form_data ){ // set variables $myServer = 'https://your_server_name/'; // the url of your server $myUser = 'Username'; // your username $myPass = 'password'; // your password $myFile = 'Your_File'; // your file name $myLayout = 'Your_Layout'; // your layout name // authenticate and get token $myEndpoint = 'fmi/data/v1/databases/' . $myFile . '/sessions'; $post_url = $myServer . $myEndpoint; $headers = array('Authorization' => 'Basic '.base64_encode("$myUser:$myPass") , 'Content-Type' => 'application/json'); $request = new WP_Http(); $response = $request->request($post_url, array( 'method' => 'POST', 'body' => $myJSON, 'headers' => $headers )); if($response){ //inspect response $responseObj = json_decode($response['body'], false); $responseCode = $responseObj->messages[0]->code; if($responseCode == '0'){ $responseToken = $responseObj->response->token; // format json from form data $form_array = array('fieldData'=>array()); foreach( $form_data['fields'] as $field ) { // get key/value pairs into an array by themselves if($field['key'] != 'submit_button'){ $form_array['fieldData'][$field['key']] = $field['value']; } } $myJSON_Data = json_encode($form_array); // insert record $myEndpoint = 'fmi/data/v1/databases/' . $myFile . '/layouts/' . $myLayout . '/records'; $post_url = $myServer . $myEndpoint; $headers = array('Authorization' => 'Bearer ' . $responseToken , 'Content-Type' => 'application/json'); $request = new WP_Http(); $response = $request->post( $post_url, array( 'method' => 'POST', 'body' => $myJSON_Data, 'headers' => $headers ) ); if($response){ // ok } else { // insert err } // log out $myEndpoint = 'fmi/data/v1/databases/' . $myFile . '/sessions/' . $responseToken; $post_url = $myServer . $myEndpoint; $headers = array('Content-Length' => '0'); $request = new WP_Http(); $response = $request->post( $post_url, array( 'method' => 'DELETE', 'headers' => $headers ) ); } else { // authentication err } } } Enabling Ninja Forms To use with Ninja Forms, we configure the "Emails & Actions" configuration (see Figure 1) for the form we are working on, enable the "Web Hook," (see Figure 2) and give it a Name and Hook Tag. The Hook Tag here is important, and it needs to match the action name given in the custom action. In the code above, it is the first parameter of the add_action function, where we name it "fm_WordPress_action". Figure 1- Use "Emails & Actions" to configure your form Figure 2- Use the slider to enable the "Web Hook" action. If we break down the above code, we see the performance of two steps. The first is to authenticate to the database and get a token back. Once we have successfully authenticated and have a token, we use that in the header of our HTTP request to submit JSON to the Data API that completes our record creation.
There are RESTful endpoints used to perform both authenticating and record creation. You can find these in the Data API documentation. First, we send credentials using a HTTP header and receive a token upon successfully authenticating to the database. Once we have a token, we do a bit of cleanup work to get our data out of the form, where we reference the "Field Key" from the form builder, and correctly format the JSON we will submit as the body of our request to create a new record. We define the Field Key for each field in the form (see Figure 3). Figure 3 - Define the Field Key for each field. Of course, all field keys need to match with the field names in your database. Also, this assumes that you have correctly set up security in your FileMaker file, and have enabled the "fmrest" privilege set for the account used to perform this action (see Figure 4). Figure 4 - Set up security in your FileMaker file to enable the "fmrest" privilege set. You will see the File and Layout specified in the endpoint we reference, so we only then need to include the JSON containing our record data, in addition to passing our authentication token as a header. All this is simple enough, once you have achieved a cursory understanding of REST architecture and how to work with it. Licensing and Costs FileMaker Server includes an amount of data transfer at no additional cost. The good news is that the amount already provided -- 2GB of data, per user each month -- should be more than enough for most every use case. That does not include container data and only counts toward outbound data transfer. Data is also shared for all users. For example, if you have a FileMaker Server with five licensed users, that would be 10 GB/month, or 120 GB for the year. That far exceeds the amount that most solutions see in data transfer even with FileMaker Pro pushing user interface and containers. If you go beyond this very high threshold, you would likely want to pay additionally for the support to handle that kind of traffic. Considering the cost of FileMaker Server effectively includes this licensing, I would not hesitate to recommend using the Data API in any new development. Building on Your FileMaker-WordPress Integration This is just an example showing a basic integration of a WordPress form used to create a record in your database. You could build on this example to add more robust error handling or additional functionality. Integrating with FileMaker is easier than ever! Hopefully this article gives you some insight into how you can extend your FileMaker applications in ways previously not conceived. If you have any questions or need additional help integrating your FileMaker solution with your website, please contact my team. We’d love to see if we’re a good fit for your next project.
References FileMaker Data API Guide
http://fmhelp.filemaker.com/docs/17/en/dataapi/ FileMaker Licensing FAQ
http://www.filemaker.com/purchase/store/faq-teams.html Ninja Forms
https://ninjaforms.com Your Guide to Using the FileMaker Data API to Enhance Your Application
https://www.soliantconsulting.com/blog/filemaker-data-api The post How to Use FileMaker 17 to Connect the Data API and Your WordPress Website appeared first on Soliant Consulting.
Voir le billet d'origine
 

Extending FileMaker PDF functionality with DynaPDF

Generating PDFs in FileMaker FileMaker Pro has had the ability to generate PDF documents since version 8, providing basic functionality that has remained largely unchanged since its introduction. Using FileMaker Pro’s plugin architecture, we can extend this functionality to provide the following enhancements: Search PDF document text Append multiple PDF documents in non-sequential order Add a watermark to a PDF document Password protect a PDF document Delete pages from a PDF document Add clickable “Page Links” to move to different pages throughout a PDF document Compress a PDF file to prepare them for transmission over the internet An intermediate to advanced FileMaker Pro developer can leverage these features to create even more dynamic PDF documents inside FileMaker Pro. Setup and Installation The MBS FileMaker Plugin by MonkeyBread Software has one of the most feature-packed plugins in the FileMaker community with over 5,000 functions to date and developer Christian Schmitz continues to regularly add new features. As a side note, one of my favorite features is a more colorful script syntax coloring but there are many more that can be useful in a variety of situations. Using the MBS plugin, we can extend its functionality even further using the DynaPDF library. DynaPDF is a popular library for working with PDFs that the MBS plugin allows us to access using functions. For DynaPDF alone, you can use 484 custom functions inside FileMaker Pro. To setup this up, first download the MBS plugin. Included in that download is the DynaPDF library in both macOS and Windows formats. Read the installation documentation to know where to install the DynaPDF library on your computer. It is also worth noting DynaPDF and MBS FileMaker Plugin can also run as a server-side plugin, allowing you to leverage the power of server processing and not require an individual license for DynaPDF on every end user computer. Plugin Functions & Scripting All DynaPDF functions use a dot syntax starting with “DynaPDF.” DynaPDF requires some sequential steps to manipulate a PDF document. Using the “Set Variable” step we can increment the DynaPDF library and create a memory space inside FileMaker Pro. Here is an overview of this process using FileMaker script steps: #Initialize new PDF instance Set Variable [$pdf; Value:MBS ( "DynaPDF.New" )] #Convert path to DynaPDF native path Set Variable [$targetPath; Value:MBS( "Path.FileMakerPathToNativePath"; $fruitPath )] #Open Existing PDF into memory Set Variable [$x; Value:MBS ( "DynaPDF.OpenPDFFromFile" ; $pdf ; $targetPath )] After we call these initialize functions, we can perform any number of DynaPDF functions to this PDF we have brought into memory. Check out a complete listing of DynaPDF functions. To complete the PDF manipulation process and save our changes to the PDF document we perform the following steps: #Denote where to save changes to PDF file, could be same path or different path Set Variable [$x; Value:MBS ( "DynaPDF.OpenOutputFile" ; $pdf ; $targetPath )] #Save will commit those changes to that path Set Variable [$x; Value:MBS ( "DynaPDF.Save" ; $pdf )] #Release clears the memory space, allowing a new instance of "DynaPDF.new" to be created. Set Variable [$x; Value:MBS ( "DynaPDF.Release" ; $pdf )] It is important to note that you can redirect the output of your changes to a different file path than the one you started with in the initialization functions earlier. Download Our Demo File Get the demo file You can use our complimentary demo file to demonstrate a few capabilities of DynaPDF. This file contains a simple table containing pictures and images of different types of fruit. The goal is to create a listing of each fruit with clickable links to different pages throughout the PDF. First, DynaPDF allows us to create two PDFs and then combine them in the reverse order. We can parse the text of each page of the PDF to determine the page number of each fruit in the document. After combining the PDFs, we can add “Page Links” into specific locations on each page, allowing us to hyperlink within our combined PDF document. We use this in two ways --  first, by having a table of contents page that allows us to jump to a specific fruit on a page and second, by having a button on each page that allows us to return to the table of contents page. This minimizes the need to scroll through each page of the PDF, creating a more fluid user experience. Enhancing FileMaker Pro with PDF Document Manipulation With some script steps and external plugin functions, we see how powerful we can make FileMaker Pro by manipulating PDF documents. We can link around a PDF document dynamically, combine multiple PDF documents in different order and parse text from specific pages in a PDF, and much more. PDF functionality has remained the same for almost 15 years in FileMaker Pro. By using FileMaker Pro’s plugin architecture we can extend that functionality to build even more powerful custom applications. What kind of apps could you build with this powerful set of PDF tools? Next Steps for Your FileMaker Solution If you have any questions about this functionality or seek a development partner in using it to take your FileMaker solution to the next step, please contact our team. We’re happy to provide additional insights and determine if we’re a good fit for your next project. References MBS FileMaker Plugin
http://www.monkeybreadsoftware.de/filemaker/ DynaPDF from MBS
https://www.mbsplugins.eu/component_DynaPDF.shtml FileMaker Hacks Blog Post
https://filemakerhacks.com/2017/02/21/pdf-with-embedded-links/ The post Extending FileMaker PDF functionality with DynaPDF appeared first on Soliant Consulting.
Voir le billet d'origine
 

JSONPath in FileMaker Demo

Leveraging JSON to pull additional information into FileMaker introduces new opportunities for integration with web services and RESTful APIs. The functionality allows you to strengthen your FileMaker solution by querying specific JSON data elements. Learn more about how this functionality can empower your organization by downloading our complimentary demo file on setting up your JSON path. Read the blog post… Complete the form to receive the file: Trouble with this form? Click here.
The post JSONPath in FileMaker Demo appeared first on Soliant Consulting.
Voir le billet d'origine
 

JSONPath in FileMaker via the Web Viewer

Getting information from JSON opens up FileMaker for more integration with web services and RESTful APIs. With the Data API (beta in 16, v1 in 17) and Admin API (FileMaker Server 17), JSON will likely continue to become more important and more integrated with FileMaker. Querying JSON Data Elements The JSONGetElement function lets us query specific JSON data elements, using either an object name, an array index, or a path. The key is there that these must be known values. We need to either know something about the JSON structure if we want specific elements. We cannot query or search JSON based on certain criteria. Alternatively, we could get everything from the JSON object into a field or variable, and then apply some rules after the fact. Maybe we want to compare information or look for elements that fit certain requirements, such as a price above or below certain thresholds. Maybe we want to look for arrays that are missing certain elements, such as ISBN numbers in an array with book information. In XML there’s a syntax called XPath that uses expressions to find information in nodes or node-sets. There’s a similar concept that allows us to extend JSON, taking advantage of a JavaScript library called JSONPath, and FileMaker’s own Web Viewer to act as the engine for the JavaScript library. This lets us feed in JSON and a JSONPath expression into a Web Viewer, and return the result via the fmpurl protocol. FileMaker and Web Viewer Integrations Web Viewer and JavaScript integration is nothing new. A Google search for FileMaker and JavaScript integration will likely bring up many examples of such integration. Some examples include FileMaker reaching out to external APIs. Other examples use what’s called a “data uri” to render web pages directly in your web viewer. Using a “data uri” you can include CSS and JavaScript in your HTML code. Setting Up Your JSON Path The included demo file has a field for our jsonpath.js library. This is an open source file and our only dependency. When implementing this in a real solution, you’d likely place this in a resource table and only call it as needed. Next, we have a field for our JSON. This can be an object or array. Your own process may store the JSON in a variable, but the demo file uses a field so that we can see the source values as we’re testing our JSONPath expressions. Additionally, we have an “input” field, which is the JSONPath query. Instead of JSONGetURL, JSONPath uses expressions in a text format to search the JSON for matching results. Then, we have a result field so we can see the result of our JSONPath query for certain values from the JSON using the jsonpath.js library. Both the input and result fields also could be turned into variables. Finally, we have an empty Web Viewer object, with a name of “WebViewer” so we can point to the object as needed. Scripting Your JSON Path There are two short scripts, “JSONPathInput” and “JSONPathWrite.” The first script, “JSONPathInput,” builds HTML and sets this HTML into the Web Viewer. As mentioned above, we can use “fmpurl” inside HTML to call FileMaker scripts. The last action in our “JSONPathInput” script does just this, calling the “JSONPathWrite” with a script parameter. That script parameter is the result of the JSONPath query, and all the script does is set our Result field with this value. The process is simple enough, but the complexity and power lie in the HTML that we create. HTML The HTML inside the script takes up only a few lines of code. (Note: The \ characters are there to escape double quotes inside the text.) Substitute ( "data:text/html, <!DOCTYPE html> <html lang=\"en\"> <head> <script type=\"text/javascript\"> **JS_FUNCTION** </script> <script type=\"text/javascript\"> var json = **JSON**; var p = jsonPath(json, \"**INPUT**\" ); var r = JSON.stringify(p); var url = \"fmp://$/" & Get ( FileName ) & "?script=JSONPathWrite&param=\" + r ; window.location = url ; </script> </head> </html>" ; [ "**JS_FUNCTION**" ; zResources::JSONPath ] ; [ "**JSON**" ; zResources::JSON ] ; [ "**INPUT**" ; zResources::Input ] ) Let’s break this apart into smaller chunks. First, the HTML is wrapped inside a FileMaker substitute function. Skipping briefly to the last lines of code, we see three substitutions. Each bit of text bracketed by the double asterisks gets switched out with values from our fields. These three values, such as **INPUT**, appears in the HTML code as placeholders. We’ll tackle each piece separately. Our text starts with “data:text/html,” which means we’re constructing a web page. Next, we have some HTML specific tags at the beginning and end: <!DOCTYPE html> <html lang=\"en\"> <head> . . . </head> </html> Inside this HTML we have two JavaScript functions. The first function, represented by our **JS_FUNCTION** placeholder, represents the jsonpath.js library. This brings the library into our web page. The second function is where we write out how to apply the jsonpath.js library against our JSON and our JSONPath expression. <script type=\"text/javascript\"> var json = **JSON**; var p = jsonPath(json, \"**INPUT**\" ); var r = JSON.stringify(p); var url = \"fmp://$/" & Get ( FileName ) & "?script=JSONPathWrite&param=\" + r ; window.location = url ; </script> We declare our JSON value as a variable inside JavaScript. Then we declare another variable with the result of sending our **INPUT** or query from the field into the JSONPath function. Ordinarily, this might be enough, but sometimes JSONPath returns objects or arrays, and these might not display properly in certain browsers. Instead, you might see a value like “Object object,” so we use the built-in “JSON.stringify” function to convert objects into strings. Finally, we set a variable to the fmpurl address of our “JSONPathWrite” script, with the stringified variable as the script parameter, and then feed this url into the Web Viewer. How does JSONPath work? Let’s assume we have some JSON: { "store": { "book": [ { "category": "reference", "author": "Nigel Rees", "title": "Sayings of the Century", "price": 8.95 }, { "category": "fiction", "author": "Evelyn Waugh", "title": "Sword of Honour", "price": 12.99 }, { "category": "fiction", "author": "Herman Melville", "title": "Moby Dick", "isbn": "0-553-21311-3", "price": 8.99 }, { "category": "fiction", "author": "J. R. R. Tolkien", "title": "The Lord of the Rings", "isbn": "0-395-19395-8", "price": 22.99 } ], "bicycle": { "color": "red", "price": 19.95 } } } With JSONGetElement, to pull out the ISBN we’d need to loop through the “book” array and extract the value using something like: JSONGetElement ( JSON ; "store.book[2]isbn" ) The [2] represents the 3rd index in the book array. The first two indexes contain no value for ISBN, but we’d need to loop through all of them to pull out what we need. With JSONPath, all queries begin with “$” followed by a path with optional operators. The “$” represents the root object or element. Dot and bracket notation is used in ways similar to the JSONGetElement function. The power of JSONPath comes in the ability to traverse JSON and slice out elements, with the logic built into the JSONPath expression. Say you need to know which elements in the above JSON have an ISBN value. You can get the array values with this query. $..book[?(@.isbn)] If you want to find titles of books that don’t have an ISBN, then you flip this around and append the title key: $..book[?(!@.isbn)].title To find books where the price is greater than some value, you can use comparison operators. $..book[?(@.price &gt; 15)] This “stringify” action in our JavaScript function will wrap your result inside a JavaScript array, so some additional manipulation is required. If your result contains a single value, even if this is object, you can use JSONGetElement ( Result ; “[0]” ) to strip off the “[ ]” brackets. For arrays that contain multiple values, you can use JSONListKeys to determine how many values there are in your array and process these with the native JSON functions. This query returns one book object where the book costs more than 15: $..book[?(@.price > 15)] [{"category":"fiction","author":"J.R.R.Tolkien","title":"The Lord of the Rings","isbn":"0-395-19395-8","price":22.99}] In the above example, to get the title, use JSONGetElement ( Result ; “[0]title” ) and this will return “The Lord of the Rings.” For a more complete review of all options and operators available in this JSONPath Javascript library, refer to this article on JSONPath. Get the Demo file Download the JSONPath demo Why Use JSONPath? There is some overlap with JSONPath and JSONGetElement. $.store is the same as JSONGetElement( JSON; “” ) and returns our entire JSON. FileMaker reorders JSON based on the keys, so they might look different, but it’s the same content. JSONPath allows us to extend our applications that use JSON to both analyze and extract information, almost like searching the content, without first pulling apart as we’d need to do with JSONGetElement and additional scripting. Caveats with JSONPath There are a couple of considerations with fmpurl. Security settings will need to be updated to allow the “fmpurlscript” extended privilege set for any accounts that use this process. If you have multiple versions of FileMaker open, running the script with the “wrong” version may fail. If the fmpurl is bound to FileMaker 16, and you try to use it in 17, you might get an error. Leveraging New Features in FileMaker 17 If you have any questions about how to benefit from JSONPath and other new features in FileMaker 17, please contact our team. We’re happy to help your team determine the best way to leverage new functionality for your FileMaker solution. The post JSONPath in FileMaker via the Web Viewer appeared first on Soliant Consulting.
Voir le billet d'origine
 

FileMaker Server 17 and the Crucial ‘stats.log’

stats.log on FileMaker Server There is no log file more important on your FileMaker Server then the ‘stats.log’. It delivers invaluable information on how your deployment is behaving across the four traditional bottlenecks of any server: Is the processing power sufficient? Can the disk speed handle the volume? Is there enough memory available? Does the network card give me enough bandwidth? The information in that log will help you troubleshoot performance bottlenecks in your solution. The stats.log also will help you plan and extrapolate whether the current server can handle any new load you have in mind. It will inform you if it is safe to use more PSoS or more server-side schedules or add a few WebDirect users. Without this log, you are, in effect, flying blind. stats.log in FileMaker Server 16 In FileMaker Server 16, the toggle to enable this log was in the Admin Console as shown in Figure 1: Figure 1 - Toggle for stats.log in FileMaker Server 16 Admin Console (click to enlarge) The statistics themselves were visible in the Console too as shown in Figure 2: Figure 2 - Statistics shown in FileMaker Server 16 Admin Console (click to image to enlarge) That is not so anymore in the new FileMaker Server 17 Admin Console. stats.log in FileMaker Server 17 In the FileMaker Server 17 Admin Console, you can only toggle the top call stats log. To view any of the logs, you must download them (see Figure 3): Figure 3 - Download log files in FileMaker Server 17 Admin Console (click image to enlarge) Finding the stats.log in FileMaker 17 As per my previous blog post on missing features in FileMaker 17 illustrates, you may thiink the stats.log is no longer available in FileMaker Server 17. Rest assured: it is still there. However, it is also still turned off by default. (I really wish it wasn’t.) Because we do not get visual reminders of of this in the new Admin Console, you may easily forget about it. Turning on the stats.log in FileMaker 17 The very first thing I do when I install a new FileMaker Server or log into one already running is turn on the stats.log. I do not like flying blind… In FileMaker Server 17, you can only do so from the command line on the server itself – or through a secure tunnel to the command line on the server (see Figure 4): Figure 4 - Turn on the stats.log in FileMaker Server 17 (click image to enlarge) While you are there you can also enable the Client Stats log: fmsadmin enable clientstats Figure 5 - Verifying the logging interval and log size setting (click image to enlarge) That client stats log as well as the top call stats log will turn themselves off on every FileMaker Server restart, but the regular stats.log will remain on after issuing this command. Next, I will verify what the logging interval is and how big the log size setting is: fmsadmin get serverconfig: The default settings of logging every 30 seconds and keeping the log size at 40MB is usually sufficient. If you want to change them, the command would be: fmsadmin set serverconfig statsinterval=15 This, for example, would change the interval to 15 seconds. Accessing Your Data in the stats.log Now that we can sleep easy knowing our server deployment will log valuable performance data, how do we get the data when we need it? You cannot download the stats.log and the ClientStats.log from the Admin Console. You will need to grab them from the FileMaker Server logs folder (see Figure 6). Figure 6 - Get the stats.log and ClientStats.log from the FileMaker Server logs folder (click image to enlarge) Questions About the stats.log As always: post any questions on community.filemaker.com or as a comment on this blog, and we’ll be happy to help out. For a full run-down of the new Admin Console, the configuration options that are available from the command line, the new Admin API and the new Console, and a dedicated Tech Brief on monitoring your FileMaker Server, download comprehensive white papers. Leveraging New Features in FileMaker 17 If you have any questions about how to benefit from the features in FileMaker 17, please contact our team. We’re happy to help your team determine the best way to leverage new functionality for your FileMaker solution. The post FileMaker Server 17 and the Crucial ‘stats.log’ appeared first on Soliant Consulting.
Voir le billet d'origine
 

JavaScript App Extension to the FileMaker Server 17 Admin Console

New FileMaker Server Admin Tools FileMaker Server 17 includes exciting new offerings, including a Data API out of beta and a brand new Admin API. The FileMaker Server 17 Admin Console has been redesigned with a fresh, new look. Now, some features that were available in the Admin Console in previous versions of FileMaker Server are no longer available in it. For instance, “send message” and “verify database” schedules can no longer be created from the console. Setting the maximum number of hosted files, enabling/disabling the stats log, enabling/disabling the XML and the PHP APIs, are no longer available from the Admin Console. Download the tech briefs co-authored by Wim Decorte and Steven H. Blackwell for a comprehensive review of how the FileMaker Admin Console has changed in FileMaker 17. Read the blog posts: FileMaker Server 17 Admin Console, Admin API, and Admin CLI FileMaker Server Monitoring in FileMaker 17 FileMaker Server 17 and SSL Changes You Need to Know As explained in much greater detail in those white papers, most of the functionality in previous versions of the Admin Console has not gone away, but it’s no longer available through the Admin Console; instead, we now need to rely on the Admin CLI and/or the Admin API to use and/or set some of those features and options. Moving Forward in FileMaker 17 At Soliant Consulting we thought it would be nice to have a convenient, web-based means from which to administer more aspects of FileMaker Server than what the stock Admin Console offers. To do so, we are leveraging the new Admin API to simplify tasks that are no longer available via the native Admin Console, but also to do things that were not possible before 17, like visualize and manipulate FileMaker Server schedules in a calendar view. Introducing the FileMaker Server Admin Console Extension We set out to build a web-based extension of the native Admin Console, an app called FMS ACE (FileMaker Server Admin Console Extension). Our team is sharing it with the FileMaker community for free, in an open source form for anyone to modify and extend. This version of FMS ACE provides the following enhancements: Display all schedules on the server in a calendar view Filter the schedule display by schedule type Create "verify database" schedules Create "send message" schedules We do not intend for FMS ACE to replace the native FileMaker Admin Console. Rather, we see it as an easy-to-use complement to the stock Admin Console. You can run both of them side by side in a web browser. FMS ACE is a JavaScript app, just like the native FileMaker Server 17 Admin Console. FMS ACE leverages the new Admin API in FileMaker Server 17 to obtain all schedules in a FileMaker Server, and it displays them in a calendar format for you to see at a glance all schedules defined in your server. You can choose to see them in a “month”, “week”, or “day” view, and you can create and delete schedules right from the calendar in FMS ACE. Your edits are automatically pushed to your FileMaker Server. Sound appealing? Keep on reading! A Few Words on the FMS Admin API The new Admin API in 17 allows us to interact with FileMaker Server via RESTful calls. For a complete list of the calls available, refer to the Admin API documentation installed with FileMaker Server 17 at https://<your_server_here>/fmi/admin/apidoc/ You can also read Anders Monsen's introduction to FileMaker 17's new Admin API. FMS ACE and Schedules Half of the FileMaker Server 17 Admin API calls involve interacting with schedules (backup, script, send message, and verify database schedules). Let’s look at how FMS ACE leverages this new API, and in particular the schedule calls, to work with FileMaker server schedules. When you launch FMS ACE in a web browser, you are prompted for the credentials to connect to your FileMaker Server (the Admin Console credentials). This is very similar to logging into the native Admin Console. Once you log in, FMS ACE automatically pulls the data for all schedules in the FileMaker Server that you connect to, and it displays them in this fashion. Calendar displays "week" view by default (click image to enlarge) Behind the scenes, FMS ACE uses the "schedules" Admin API call to obtain all schedules in the server. It uses the free, open source FullCalendar JavaScript library to visualize data returned by the Admin API in a calendar view. Note that the different schedule types are color-coded, and you can choose to filter by schedule type, displaying only some schedule types at a time. "Month" calendar view filtered to show only Backup and Verify schedules (click image to enlarge) You can also create "verify database" and "send message" schedules from FMS ACE, two schedule types that can no longer be created from the native Admin Console. Popup to add a Verify Database schedule (click image to enlarge) To view the detail for a schedule, click on it. To delete it, click "Delete" in the details popup. Popup showing schedule detail and ability to delete schedule (click image to enlarge) How can you get your hands on this app, you are wondering? Utilizing FMS ACE as an End User Download the latest version of the built JavaScript app from GitHub Copy the "fms-ace" folder to the following location on your FileMaker Server machine: On Windows:
C:\Program Files\FileMaker\FileMaker Server\HTTPServer\conf\ On Mac:
/Library/FileMaker Server/HTTPServer/htdocs/httpsRoot/ That's it! Now you should be able to access FMS ACE on your FileMaker Server at the /fms-ace route, e.g. https://<your_server_here>/fms-ace Please note that the current version of FMS ACE is only supported on FileMaker Servers with a security certificate signed by a Certificate Authority (not with the self-signed certificate that ships with FMS 17). We have a ticket on our roadmap to try to overcome this limitation. Leveraging the Admin CLI Currently, we are relying entirely on the Admin API to interact with FileMaker Server. In the future, FMS ACE could also leverage the Admin CLI to interact with FileMaker Server. As mentioned earlier, some functionality that previously existed in the native Admin Console is now available in the Admin API and/or Admin CLI. It would be possible to issue Admin CLI commands from FMS ACE, thus making this app a central place from which to interact with FileMaker Server. The future of FMS ACE depends on interest within the FileMaker community, so please let us know what you think. You can even extend FMS ACE yourself, as we are releasing it as an open source project! Contributing to FMS ACE as a Developer The project is available in GitHub Please refer to the Contributing Guidelines if you would like to extend FMS ACE Final thoughts The administrative tools available in FileMaker Server 17 represent a significant departure from previous versions of FileMaker Server. We believe that FMS ACE can grow to be a handy tool for FileMaker Server administrators. Please connect with us on GitHub and let us know what you think about FMS ACE. Could this be a useful tool for you? What new features in FMS ACE would you be most interested in? If you're interested in other ways to integrate web services with your FileMaker solution, contact our team. We can provide insights on the best way to move forward. The post JavaScript App Extension to the FileMaker Server 17 Admin Console appeared first on Soliant Consulting.
Voir le billet d'origine
 

FileMaker Server 17 – Help with the Helper Tools

Moving forward with FileMaker 17, the FileMaker Server Command Line Interface (CLI) will play a more prominent role in how we interact with our server. You can only access some settings no longer available through the Admin Console  through the CLI or the new Admin API. (Learn more in the tech briefs here.) Helper Tools in the New Admin API We are already exploring plenty of new helper tools to take advantage of the new Admin API and create nice-looking user interfaces to augment the standard Admin Console. You can even expose settings and configuration options that may seem a little hidden. In a pinch though, when you are logged into the FileMaker Server machine and need to check or set some of the options, know that the CLI has a pretty decent built-in help. To get a list of all the available commands for instance type in the folllowing as shown in Figure 1: Note that all of these commands are the same on Windows as on macOS.) Figure 1 - Get a list of the available commands (click image to enlarge) This will give you all of the commands available as shown in Figure 2: Figure 2 - List of available commands (click image to enlarge) To get more help on any of these commands, type in the following: fmsadmin help <the command you are after> As an example, let’s look at the new GET command. This command allows us to see many of the current FileMaker Server settings, including default settings (see Figure 3). Figure 3 - The new GET command (click image to enlarge) Figure 4 shows what this will get us: Figure 4 - Current FIleMaker settings, including default setting (click image to enlarge) Based on what we see in this help section, we can now issue this command as shown in Figure 5: Figure 5 - Using the 'serverconfig' command (click image to enlarge) This allows us to see the settings in the 'serverconfig' area as shown in Figure 6: Figure 6 - Settings shown in the 'serverconfig' area (click image to enlarge) Get Comfortable with the FileMaker 17 CLI with Helper Tools If you are unfamiliar with the CLI, then hopefully these help options will allow you to quickly find what you need. Leveraging New Features in FileMaker 17 As always, post your questions to the FileMaker Community Forum. My team and I are can lend a helping hand. If you have any questions about how to benefit from other new features in FileMaker 17, please contact our team. We’re happy to help your team determine the best way to leverage new functionality for your FileMaker solution. The post FileMaker Server 17 – Help with the Helper Tools appeared first on Soliant Consulting.
Voir le billet d'origine
 

Is FileMaker 17 Missing Features?

As Platinum Partners, our team at Soliant has been testing with the FileMaker 17 platform for months prior to the release. While exploring it, one of my biggest fears was related to the new Admin Console - would people conclude that certain features were no longer available? Case in point, this post from the FileMaker Community Forum: Post from the FileMaker Community Forum about the Admin Console in FileMaker 17. This feature in question has not been removed from FileMaker Server 17. However, to use it, you must leverage the updated Admin CLI (command line interface) or the brand new Admin API. You can toggle this particular setting through the following CLI command from Terminal on macOS or the command line box on Windows: fmsadmin set serverconfig securefilesonly=false More on the Admin CLI & Admin API You can learn more about the commands available through the CLI and the new Admin API in whitepapers available on the FileMaker forum. Make sure to download them and keep them handy for when you need to adjust a setting on FileMaker Server but can’t seem to find it in the Admin Console. FileMaker Server Feature Removal A handful of features were removed from FileMaker Server. The online help for FileMaker Server 17, lists them here. Next Steps in FileMaker 17 If you have any questions about how to find missing or moved features in FileMaker 17, please contact our team. We’re happy to help your team determine the best way to move forward with your FileMaker solution. The post Is FileMaker 17 Missing Features? appeared first on Soliant Consulting.
Voir le billet d'origine
 

How to Leverage FileMaker 17’s New Capabilities in Your Hosting Environment

Welcome to FileMaker 17 FileMaker 17 has arrived with a full suite of new tools and capabilities for developers and users alike. As users and developers dive into the features, exploring everything the version has to offer, they may have another question on their mind: “What does this mean for my hosting environment and server configuration?” A new release is an excellent time to review your hosting needs and determine if they’re being met. It’s also a great time to consider if your server configuration is evolving with the pace of your business and can scale with you. Leveraging New FileMaker 17 Features and Tools This release includes a variety of new functions to enhance your database storage, security, and cloud capabilities. With this newly available functionality in the platform, we have updated Soliant.cloud services to support the newest version of FileMaker Server available and immediately take advantage of the platform’s new capabilities. Hosting Configured Uniquely for Your FileMaker Needs As we’ve worked with FileMaker for decades, we’re well aware of the common challenges, needs, and opportunities of hosting for the platform’s implementations. Our premium hosting service, Soliant.cloud addresses concerns and leverages unique FileMaker capabilities through our custom configuration for the platform. As a Platinum FileMaker Partner, we received an inside look at FileMaker 17 months before its release and started immediately tailoring Soliant.cloud to leverage the release’s new features and tools. Now’s a great time to transition to consultative hosting services configured specifically for your implementation. Learn more about Soliant.cloud and how easy it is to switch to our comprehensive FileMaker hosting. Evolve! For our existing Soliant.cloud clients, we offer the Evolution Package to transition your existing Soliant.cloud instances to the latest version of FileMaker. Our FileMaker 17 Evolution Package involves the following steps: An evaluation of your current Soliant.cloud server instance to develop a plan and time frame for action. This will include: Database porting Container Data porting Analysis and configuration adjustments to EBS volumes Analysis and configuration adjustments to AWS Snapshots Secure Socket Layer Certificate (SSL) migration Server Side Plug-Ins porting Server Side Scripting porting Current backup and snapshot porting Monitoring and AWS roles & security transfer Instance FTP-SSL accounts and configuration Instance command, batch, and powershell file porting FileMaker Server License transfer and license review Update networking security, roles, permissions and DNS. A review of our findings and recommendations. Our team will: Review costs for evolution based on the analysis. Review licensing considerations. Propose any possible optimizations for cost reduction and performance enhancements. Define a maintenance window to perform the evolution. A full evolution for your solution, paired with ongoing communication with your team Get Started Today To learn more about upgrading your hosting and solution in one joint effort, contact our FileMaker hosting experts at Soliant.cloud today. The post How to Leverage FileMaker 17’s New Capabilities in Your Hosting Environment appeared first on Soliant Consulting.
Voir le billet d'origine
 

FileMaker Server Monitoring in FileMaker 17

At first glance, FileMaker Server 17 seems to be making it harder to properly monitor its performance. The Admin Console no longer has live views of the most important statistics across the four traditional bottlenecks (processing power, disk i/o, memory and network throughput). It also dropped the live view into the FileMaker Server event log. However, there are simple ways around these challenges. Steven Blackwell and I put together an overview of how to continue to monitor your FileMaker Servers going forward. Download the Tech Briefs Get the FileMaker 17 Tech Briefs In this tech brief we cover: How to enable the crucial FileMaker Server stats.log, using the Admin Command Line and/or the new Admin API Where to find and how to download all of the FileMaker Server logs How to use the Windows Perfmon tool to collect these statistics and more (includes a template to download and use) Tools the Operating System provides to augment the monitoring effort If you have any questions or feedback then start a thread on community.filemaker.com, and I’ll be sure to chime in. Moving Forward with FileMaker 17 If you have any questions about how to navigate the new FileMaker Server monitoring or any other new features included in FileMaker 17, please contact our team. We’re happy to help your team determine the best way to leverage them within your FileMaker solution. The post FileMaker Server Monitoring in FileMaker 17 appeared first on Soliant Consulting.
Voir le billet d'origine
 

FileMaker Server 17 Admin Console, Admin API, and Admin CLI

It’s been a while since the FileMaker Server Admin Console received a facelift. We’ve had the same basic UI and functionality for our Admin Consoles since FileMaker Server 13. Visually, the new Admin Console in FileMaker Server 17 is very different. It's now very similar to the one in use for FileMaker Cloud. However, the changes go much deeper than just how it looks. Some features and settings that have been in the Admin Console for a long time are no longer available; some are only available in the brand new Admin API and the upgraded Admin CLI (command line interface). Steven Blackwell and I put together an overview of all changes across the different ways to administer your FileMaker Server. Download the Tech Briefs Get the FileMaker 17 Tech Briefs In addition to the general overview, it also contains: A complete side-by-side comparison of the FileMaker Server 16 Admin Console and the FileMaker Server 17 Admin Console. You will find this helpful if you are already familiar with the previous Admin Console. A matrix of the most common admin actions and information on which of the three Admin touch points (Console, API, CLI) that actions are available in. We cover admin actions such as adjusting the database cache, modifying the progressive backup interval, disabling the new default midnight backup schedule, and many more. With the white paper comes a full set of all the Admin API functions in a Postman collection you can use for testing the new Admin API. It’s a powerful addition to our toolset, allowing us to build our own admin consoles and we will see many community contributions do exactly that. With any questions on the new functionality, head over to community.filemaker.com. Many of us will be there to help guide you through what is new and what has changed. In August, I will also be presenting at the annual FileMaker Developer Conference. My first session covers what is new and different in FileMaker Server 17. My second focuses on using the new Data API Between now and Devcon, keep your eyes peeled for any webinars that FileMaker Inc will put together about these topics as well. Moving Forward with FileMaker 17 If you have any questions about how navigate the Admin Console or any other new features included in FileMaker 17, please contact our team. We’re happy to help your team determine the best way to leverage them within your FileMaker solution. The post FileMaker Server 17 Admin Console, Admin API, and Admin CLI appeared first on Soliant Consulting.
Voir le billet d'origine
 

FileMaker Server 17 and SSL Changes You Need to Know

Changes to SSL have arrived with FileMaker 17. To illustrate general background information on SSL, why your strategies around it are so crucial to your FileMaker solution, and how to implement encryption-in-transit in FileMaker 17, I’ve co-authored a white paper. In it, I discuss important changed such as: How the default certificate no longer encrypt data in transit between FileMaker Server and its clients Why the FileMaker Server 16 HSTS feature is no longer there How you now cannot use the Admin Console to generate your Certificate Signing Request any longer Download the Tech Briefs Get the FileMaker 17 Tech Briefs I’ve like to give a shout-out to Steven H. Blackwell for co-authoring this white paper with me as well as Mislav Kos for his DevCon presentation on all things SSL and his follow-up blog posts on these topics. Moving Forward with FileMaker 17 If you have any questions about how to navigate these SSL changes or any other new features included in FileMaker 17, please contact our team. We’re happy to help your team determine the best way to leverage them within your FileMaker solution. The post FileMaker Server 17 and SSL Changes You Need to Know appeared first on Soliant Consulting.
Voir le billet d'origine
 

Creating a UUID in FileMaker 17: Introducing UUIDNumber

In version 12, FileMaker introduced a function for generating a Universally Unique IDentifier, or UUID. It follows an internet standard for generating a string value designed to be unique across space and time. These are also known as a Globally Unique Identifiers. Why Do I Need UUID? UUIDs have a broad range of uses. Because they are intended to be unique, you can use one as a Primary Key in database design. We all use Primary Keys in our tables to create relationships. (You DO use Primary Keys, right?) Using a UUID as a Primary Key in and of itself is not bad design, however there are considerations to be made. You might be used to using a serial number for a Primary Key, which is valid. However, using a UUID takes advantage of easier syncing and importing from multiple users. Your keys will, theoretically, never duplicate, and you can avoid collisions. All UUIDs Are Not Created Equal There are several different methods used to generate a UUID. The FileMaker function Get (UUID) will generate a text string containing numbers and letters. It therefore must be saved as a Text type of field and indexed as text. Get (UUIDNumber) is also designed to generate a universally unique value but without including any letters. This makes it suitable to use as a Primary Key defined as a Number field. This new function generates a 30-byte value, opposed to a 72-byte value for the text UUID. “But,” you say, "I can put letters in a number field and they work." Yes, you can, but using them as keys to relate to other values effectively strips the letters, leaving only numbers in the index. You can see this by using the GetAsNumber function on any string. If you do that, you will likely experience a namespace collision, since the value may not be unique when only its numbers are considered. Instead, use the new Get (UUIDNumber) function, and define the field as a Number if you need a Primary Key field. Field Indexing If you use a UUID for Primary Keys as well as the Get (UUID) function, your keys are all text. This can get expensive in terms of maintaining a larger index and can have implications for scaling. Number fields, on the other hand, are handled differently than Text fields, including how they are indexed. This makes a big difference as your table grows. Of course, you can use other methods of generating a number UUID, including Custom Functions and Plugins. The benefit of having a built-in function is that you can rely on it being available when you need it. This makes your code more portable, if, for example, you need to copy/paste fields from a table in one file to another. It is also best practice to adhere to native functionality where possible. This ensures your solutions are scalable and supported as much as possible. Plan for Usage I look forward to utilizing Get (UUIDNumber) for solutions that are built specifically for FileMaker 17 and beyond. If your deployment includes prior versions of FileMaker, you cannot use Get (UUIDNumber). If you use any of the 17 only functionality, you require only FileMaker 17 clients as the low bar for entry. Do so by selecting the menu item File > File Options… and set Minimum version allowed to open this file to 17.0. Moving Forward with FileMaker 17 If you have any questions about how to use the UUIDNumber or any other new features included in FileMaker 17, please contact our team. We’re happy to help your team determine the best way to leverage them within your FileMaker solution. References UUID - RFC4122 The post Creating a UUID in FileMaker 17: Introducing UUIDNumber appeared first on Soliant Consulting.
Voir le billet d'origine
 

FileMaker 17 Playlist

As with past releases of the product, FileMaker, Inc. invited Soliant's team to be a part of the initial testing of FileMaker 17. We've spent the past months working with this new version and we're happy to help familiarize you its new features and capabilities for both users and developers. Intro to Data Migration Tool May 15, 2017 - In this video, Matt Hintz shows how you can leverage the new FMDataMigration command line tool. Introducing Default Fields May 15, 2017 - In this video, Dawn Heady introduces the new default fields feature and how to leverage them in your solution. Customizing Default Fields May 15, 2017 - In this video, Dawn Heady delves deeper into using default fields by showing how to customize them for your solution. Introducing Add-on Tables May 15, 2017 - In this video, Dawn Heady shows how to use the new add-on tables feature when building out your solution. The post FileMaker 17 Playlist appeared first on Soliant Consulting.
Voir le billet d'origine
 

Two for One: FileMaker Pro Advanced for Everyone – Part One

This is part one of a two-part blog series outlining the release of FileMaker Pro Advanced tools in FileMaker 17. Until now, the flagship FileMaker Pro application came in two versions: plain old "Pro" and the feature-rich "Pro Advanced." With the release of the FileMaker 17 Platform, everyone now gets both versions in a single application. This is great news not just for hardcore developers, but for anyone wanting to learn how to create custom applications. FileMaker Pro Advanced Tools The advanced tools are a collection of powerful features to help you quickly develop polished, user-friendly apps. Two of these features, the Script Debugger and the Data Viewer, give you an inside view of how scripts and calculations work. Script Debugger With the Script Debugger, you can step through a script, performing one action at time. This not only lets you troubleshoot the script, but if you're just getting started, shows what each script step does in real time. Data Viewer Complementing the Script Debugger, the Data Viewer lets you see how data changes as the script progresses. It also allows you write calculations and see their results. You can also see how those results change as the data changes. Custom Menu Development The advanced tools include other useful features as well. For example, you can create custom menus for your app, rather than the default top-level menus (such as "View", "Format" and "Records"). You can also specify menu items, such as New Record, to call a script rather than perform the default behavior. If you want to get rid of menus altogether, you can even configure your app to run in "kiosk mode." Figure 1: The standard top-level menus in FileMaker Pro Advanced. Custom Function Development Another advanced tool allows you to create custom functions. You may be familiar with some of FileMaker Pro's built-in functions, such as Sum(), which adds up a series of values, and Get(CurrentDate), which returns today’s date. With the advanced tools enabled, you can write your own functions, adding a wide range of extra functionality to your apps. If you search the internet, you'll find that other developers have generously shared many of their own custom functions. To use them, simply copy and paste them into your app. Be sure to test them when you’re finished! Database Encryption and Database Design Report You can also leverage database encryption, which helps protect your app’s data from being stolen. The Database Design Report provides a detailed description of how your app is put together. Making the Change When you first install FileMaker Pro Advanced, advanced tools are hidden to make the software more approachable for first-time users. When you're ready to try them out, here's all you need to do: Select the menu item, then: On Mac: FileMaker Pro Advanced > Preferences... On Windows: Edit > Preferences... The Preferences dialog window appears, with the General tab selected by default. In the Application section of the dialog, enable the Use advanced tools checkbox. A message appears next to it, saying "FileMaker Pro restart required". Click OK to close the dialog window. Restart the application. When the application opens, a new “Tools” menu is added to the top-level menus. This gives access to the Script Debugger, Data Viewer, and other advanced features. Figure 2: The Tools menu in FileMaker Pro Advanced You’re ready to start exploring a whole new set of powerful tools! Read part two - To Hide or Not to Hide: FileMaker Pro's Advanced Tools Moving Forward with FileMaker 17 If you have any questions about how to use these advanced tools or any other new features included in FileMaker 17, please contact our team. We’re happy to help your team determine the best way to leverage them within your FileMaker solution. The post Two for One: FileMaker Pro Advanced for Everyone – Part One appeared first on Soliant Consulting.
Voir le billet d'origine
 

To Hide or Not to Hide: FileMaker Pro’s Advanced Tools

This is part two of a two-part blog series outlining the release of FileMaker Pro Advanced tools in FileMaker 17. Read part one here. As I wrote in “Two for One,” in FileMaker Pro Advanced 17, every user can access FileMaker Pro’s advanced tools. They simply change an option in the application preferences. While this is a welcome change, some users probably don’t need these tools and might even find them confusing. If you are a system administrator and want to make sure specific users don’t access this tool set, here’s how to do so. I’ve also added some thoughts about when it’s appropriate. Why Hide The FileMaker Pro Advanced Tools? Regardless of their access privileges, every user with Advanced tools enabled will see the Script Debugger and Data Viewer items in the Tools menu. Custom Menus cannot block the display of the Tools menu nor any of its items. If a user is at all curious, they are likely to try these features out. Script Debugger Let’s say they open the Script Debugger. Figure 1 shows how it will look initially. If they then run a script for which they have Modify privileges, they’ll see the script steps. They can step through them one at a time. However, if they run a script for which they don’t have Modify privileges, Figure 2 shows the prompt that appears. Figure 1: Initial view of the Script Debugger Figure 2: Prompt that appears if user doesn't have Modify privileges. Why give users without script modification permissions an option that will lead only to disappointment and consternation? Data Viewer Their experience with the Data Viewer is similar. Without full access privileges, when selecting Data Viewer from the Tools menu, they see the message as shown in Figure 3. If they have Modify privileges for a given script and step through it using the Script Debugger, the Data Viewer will suddenly grant them access for the duration of the script. However, if they cannot modify any scripts, then the Data Viewer is also a dead end. Figure 3: Message that appears for Data View if user doesn't have full access privileges. Database Design Report Along the same lines, any user can open Database Design Report dialog box. It shows a list of “available files.” These are currently open files to which the user has full access privileges. If no such files exist, the box will be empty as shown in Figure 4. Figure 4: Empty "Available files" box if user does not have full access privileges to currently open files. In each of these cases, the user might not understand why they can’t use these features effectively and possibly start to resent it. Fortunately, you can address this by using a new option as part of an assisted install. What’s an Assisted Install? An assisted install file allows you to automate the setup of FileMaker Pro Advanced during the installation process. This comes in handy when performing identical installations on multiple computers. All you need to do is configure a text file, called “Assisted Install.txt”, and include it with the FileMaker Pro installation software. The file contains various required data, such as a generic user name, license key, organization name, and installation options. Note that this file is not interchangeable between macOS and Windows. However, it produces the same final outcome: FileMaker Pro is installed without the need to enter any settings. Figure 5: The assisted install file with the new disable option FileMaker Pro Advanced 17 includes a new option for the assisted install: you can specify whether the user has access to the advanced tools or not (see Figure 5). If your users will not benefit from the advanced features or if you’re concerned they will misuse them, consider setting this value to 1. This removes the “Use advanced tools” checkbox from the application preferences. Without this checkbox, the user cannot access the advanced tools. Assisted Install Drawbacks One major drawback to this approach is that when a user encounters an issue, you may want to work with them at their machine to recreate the problem. You can makie use of the Script Debugger and Data Viewer to analyze what’s going on. Without these tools, you could limit your ability to troubleshoot the issue effectively. Furthermore, when you disable advanced tools, your choice is permanent. There is no system setting you can toggle to get them back, not even in the Mac property list files or the Windows registry. Your only option is to re-install FileMaker Pro Advanced 17. Why Show the FileMaker Pro Advanced Tools? While I realize all users don’t need the advanced tools, I think it’s great that they are now an option for everyone. Used as training tools, the Script Debugger and Data Viewer can help educate a new generation of talented citizen developers. With this in mind, I encourage you to provide these features to your users when appropriate. This way, they can learn more about FileMaker Pro Advanced and use it more effectively. Moving Forward in FileMaker 17 If you have any questions about how to use these FileMaker Pro Advanced tools or any other new features included in FileMaker 17, please contact our team. We’re happy to help your team determine the best way to leverage them within your FileMaker solution. The post To Hide or Not to Hide: FileMaker Pro’s Advanced Tools appeared first on Soliant Consulting.
Voir le billet d'origine
 

FileMaker 17: Intro to Add-on Tables

With the release of FileMaker 17 comes a variety of new features and capabilities for both users and developers. Learn about how the new add-on tables and how to leverage them in your solution here. Video Transcript: Hi. My name is Dawn Heady. I'm a Senior Technical Solution Architect with Soliant Consulting. Today, I want to demonstrate the new feature of FileMaker Pro Advanced 17 called “Add-on Tables.” So, what I have on screen here, is a copy of the new meetings starter solution. I created it by going to File > Create New and choosing Meetings. It’s a nice, light-weight application. I want to show you what is involved in it first, so you can see what we have before we start adding to it. There are just two layouts. We have this “Meeting Detail,” and we also have a “Meeting List.” I can navigate to it from File > Manage > Layouts and go back to the detail. I also have a couple of scripts. They are all in a Meetings folder. These are the three scripts that came with it. Finally, under File > Manage > Database, you can see that I have three tables. They are joined together in a simple relationship off of Meetings. A meeting can have many topics and it can have many action items. That’s nice light-weight solution. I’ve added two more tabs to the tab controller that comes with Meetings. I’ve added Docs and Attendees. You can see both of them are blank right now. Let’s change that. Let’s imagine that for our meetings, we would also like to attach some files -- maybe the agenda, the budget, things like that, that a person would need to have access to maybe during the meeting or before the meeting. This new feature in FileMaker makes that pretty easy to do. First, I’m going to enter Layout mode. I’ll select the Portal tool. It doesn’t matter what size I draw the portal, because it will be defined by the add-on table’s definitions. You’ll see what I mean in a minute. I’m going to make it very small, just to call that out. For “Show records from,” I can choose from existing related tables or now, even my own table. But, for this demonstration, I want to show the new feature “Add-on Table.” When you choose that, FileMaker opens up this nice Add-on Tables dialogue where it makes available to me these objects that are all ready to go. We’re going to use attachments for this example. When you click on one of the add-ons, it shows you some details about it to the right. I get a little preview about what the portal will look like when I build it out and a little bit of information. I’m going to choose that one. Now, I can name it whatever I want. Since I decided that “attachments” is kind of a big word, I wanted a shorter name. I’m going to call this “Doc” for Document. FileMaker has added for me, automatically, this portal. It has also included buttons, fields and a button here for deleting. I have a button for “New” and for “Delete.” Let’s enter “Browse” mode and see what that looks like. I’ll save my changes. We can see all the objects that FileMaker has created for us. First, let’s going into File > Manage > Database > Relationships. Notice that I did not have to create any scripts. These buttons were automatically created, and they work just fine. When I click “New,” I can add something new. Let’s see all the objects that FileMaker has create for us. First, let’s go into File > Manage > Database. Now, you’ll see that I have a new table called “Doc,” and it has a relationship to Meetings. It’s assumed that I would want to relate the primary key of the meetings to the foreign key of the document. I, also, get scripts. So now, in addition to my “Meetings” folder, I have a “Doc” folder. It’s very nice that it named all of these things “Doc” for me, even though it started out being called “Attachments” when I selected the add-on table. You’ll notice, when we look up layouts here, that no additional layouts were created. That is true for all of these add-on tables with one exception, the “People” table. Let me demonstrate that one very quickly. Let’s enter layout mode again, and I’ll select the portal tool. This time, I’m going to choose add-on table and pick “people.” “People” is a little more complicated. It actually created a people table plus a join table to hook them to the meeting. It always makes it about this size right now, for the standard add-on tables that come with FileMaker Pro 17. I could, of course, make this wider. Maybe I don’t want such a big button. I want the button to look more like it does over in, say, “Topics.” Let’s see, its width is 60, so I’ll also make it 60 here. Since I have plenty of room, I can make mine more like this. I could probably fit two more rows this way. That looks pretty good, so I think I’ll save my work. Go into “Browse” mode and save it. Let’s look at what I get for attendees. My “New” button is already wired to create a card window. It will open a card window for me. I’m going to put my name in. Let’s first look at File > Manage > Database, and see what FileMaker created for me. From “Meetings,” I now have a “People” table. Imagine, that I would have a whole list of people that would go to a variety of different meetings. One person might be allowed to go to multiple different meetings and each meeting is probably attended by more than one person. FileMaker automatically creates the join table for me, which is assignments. That is all the people that are attending that meeting; that’s an assignment. Let’s look at the tables. We get a lot of good things we would want to know about the person, their email address, their phone number, the company they belong to. Assignments basically is just for documenting that that person was invited to this meeting. That way, we can have multiple people attending this meeting. This is the one add-on that actually makes layouts. Let’s go to File > Manage > Layouts.  You’ll see that now we have a “People” folder. Within it, FileMaker has five layouts. Just like we had Meeting list and detail, now we have People list and detail and options to build out the card window. This last one is assignments. That is just a layout that is jointed. Only list and details are visible. The others are there under the hood. We also get some scripts. There is our “Doc” folder, and now we have a “People” folder. It has a whole series of scripts. It’s a really nice way to build out your application so that it can perform more functionality. Thank you very much. I hope you have enjoyed this video. Please check back at Soliant TV for other videos that show you the great new features in FileMaker Pro Advanced 17. Thank you! The post FileMaker 17: Intro to Add-on Tables appeared first on Soliant Consulting.
Voir le billet d'origine
 

How to Recover from a Damaged File Using the FileMaker Data Migration Tool

As part of the FileMaker 17 release, FileMaker Inc. has rolled out a new tool to make migrating data between copies of a database file much faster and easier. The Data Migration Tool has two primary use cases: Deploy development changes by migrating production data into a development file Revert to a known clean clone by migrating data from a damaged production file The first use case is likely to receive the most attention. Please see my colleague Matt Hintz's post for a detailed examination of this use case. The second use case will probably not garner as much notice. However, if you find yourself in a situation where you have to recover from a damaged file, you will suddenly develop a strong appreciation for the existence of this new tool. This is exactly what happened to me not too long ago. What follows is an account of how the new Data Migration Tool made it possible for me to quickly address a database corruption issue for one of our clients. Error 242 Database could not be opened; may be damaged My client's server crashed on Tuesday, April 17th at 11:45 am. I learned about the outage about an hour later, thanks to a 12:40 pm FileMaker Server email notification. It said the database was damaged and could not be opened. Below is the full notification that was sent. Note that, because there are certain details of my client's environment that I do not want to publicly disclose, I changed the FileMaker host name to "FMS" and the database file name to "FMDB". (This particular solution consists of just one file.) FileMaker Server 16.0.3 on FMS reported the following event:
2018-04-17 12:39:38.482 -0600 Error 242 FMS Database "FMDB" could not be opened. Database may be damaged; use the Recover command in FileMaker Pro 16. I checked the Windows Server system and event logs to pinpoint the time of the server crash. Progressive backups had been turned on, so I replaced the database with a progressive backup from 11:44 am – right before the crash. The file opened without any errors at that time. A few days later, FileMaker Server ran a weekly backup with verification enabled. The schedule reported that the database failed a consistency check. The following two notification emails were sent out: 2018-04-22 05:00:20.639 -0600 Error 640 FMS Consistency check failed on backup of database "FMDB". (805) 2018-04-22 05:00:20.654 -0600 Error 664 FMS Schedule "Weekly" completed, but consistency check failed on backups of one or more databases. I checked in with my client, and he reported that users were still able to use the system. Since it was Sunday, we agreed that I would work on addressing the issue the next day towards the end of the work shift. When I began my work the next day, I closed the file in the FileMaker Server admin console and then tried reopening it, but it wouldn't open. At this point, FileMaker Server sent out another notification email: 2018-04-23 15:27:53.078 -0600 Error 242 FMS Database "FMDB" could not be opened. Database may be damaged; use the Recover command in FileMaker Pro 16. Options to recover from damaged database At this point, I had two options: Recover the file and continue using it – not recommended! Revert to a last known good backup Many FileMaker administrators choose the first option, because it is the quickest way to get up-and-running. However, it is NOT the recommended option. There is no guarantee that recovering a file will remove the underlying database corruption. In fact, it's quite possible that it will correct the problem enough to make it possible to open the file but leave the root cause of the problem in place, unbeknownst to you. File recovery may even end up removing solution elements like layout objects or record data in an attempt to fix the file corruption. The second option is best practice: revert to the most recent backup prior to the crash. It's natural to resist this, because reverting to a backup involves loss – data loss (e.g. if you revert to yesterday's backup, you will lose all of today's data) and even functionality loss (e.g. if you revert to last month's backup, you will lose whatever schema, script, and layout changes you made to the file since then). This data and functionality loss can be overcome, but not easily. Functionality Loss To address functionality loss, you need to re-deploy all of the changes made since the backup file was created. This might mean having to manually recreate those changes. If you follow the practice of tracking your changes over time, this is possible but still may involve significant effort. But if you do not track your changes, determining the difference between the files can be quite challenging. In that situation, one tool you might consider using is the third-party software "FMDiff", which performs a side-by-side comparison of two versions of the same FileMaker file. Even better, if you manage your solution so that changes are not trickled into production daily but are instead batched into releases, you increase the odds that you'll have a "last known good backup" with the same codebase as the damaged file. In this case, you won't face any functionality loss. Be sure to perform a manual backup after each release to help ensure that this is the case. Data Loss Until now, in order to address data loss, you would have to import all records for all tables into a clone of the backup to which you are reverting. Even if you already had a script in place that did this, running the script could take a long time. For a solution the size of several gigabytes, a script like this could run for several hours. However, with the release of the Data Migration Tool, this data import process becomes much easier and much, much faster. FileMaker Data Migration Tool to the Rescue In my case, I was dealing with a file that failed a consistency check and wouldn't reopen. I decided to revert to the last known good backup and then try restoring the data using the new Data Migration Tool. This involves specifying a source file and a target file. In my case, the source file was my damaged file, and the target was a clone of the backup file. I had previously configured hourly, daily, and weekly backup schedules for my client. The daily and weekly schedules are both set up to create clones of the solution, so I had plenty of clones to choose from. I selected the clone from the weekly March 11, 2018, backup schedule. My last release of development changes was done on March 6, 2018, so I figured this was going back far enough in time to maximize my chances that the database corruption wouldn't be in the file (as I didn't know exactly when it got introduced in the first place), but not so far back that my latest development changes would be discarded. Data Migration Tool (DMT) Take One I first tried running DMT by migrating data from the damaged file to the clone, but the log showed many errors like this: No compatible source found for target field "FieldNameXYZ" Not all of the fields showed this error, but most did. That shouldn't have been the case since the schema should have been identical between the two files. This suggested that the damage to the file was such that FileMaker wasn't able to read the table and field schema properly. DMT Take Two Next, I recovered the corrupted file and tried running DMT, migrating data from the recovered file to the clone. I got this error: Couldn't open the source file because "(804): File cannot be opened as read only in its current state." DMT Take Three I don't know why that error happened. It seemed like it should have worked, so I tried again. However, before doing so, I opened the recovered file and closed it. I then re-ran the Data Migration Tool the same way once again, and this time it worked. No errors were reported in the log. I compacted the DMT-recovered file and copied it to the live folder. It opened without errors.
I also ran an ad hoc verify schedule that I already had in place from before, and it did not report any errors. At this point, I considered the file to be fully recovered, and I notified our client that the system was back online. If something like this happens again, I will skip "take one" and proceed directly to recovering the damaged file before using the Data Migration Tool. As a point of reference, the damaged source file was 1.2 GB in size (126 MB when compressed as a zip file). Running recovery on the file took less than three minutes, and it took the Data Migration Tool just 66 seconds to migrate the data. That's pretty impressive. Without the tool, I'd estimate that it would have taken two to four hours instead. Remote Containers Note that externally-stored containers do not get migrated over with the Data Migration Tool; they need to be copied over manually. In my case, I just left them in the original live folder as-is. Will DMT Remove Corrupt Record Data? The Data Migration Tool can help recover from a damaged file, but can it also be used to remove more benign cases of database corruption? For example, can I use it when fields display question marks instead of actual values? I tried out the tool for another one of our clients who reported the following symptoms: Searching for status "X" and location "Y" shows 20 records. Three of these records don't display any values. (When I took the file offline and opened it locally, the fields for these corrupt records displayed question marks instead of blanks.) If you delete these three records, FileMaker Pro doesn't report an error. However, the total record count doesn't change, and when you repeat the search, the corrupt records display once again. These symptoms could be describing corrupt record data or corrupt field indexes. I was curious to see if the Data Migration Tool would recognize and fix the corrupt records or indexes. Unfortunately, the issue did not get resolved whenI ran the tool. (I did not recover the file prior to running DMT.) So, what should you do in this case? Here are some other methods you can try: Rebuild field indexes: Question marks are sometimes an indication of damaged field indexes. You can rebuild each field index in the affected table manually. Or you can run Recover on the file without actually doing a recovery, simply selecting the option to rebuild field indexes. Select the "copy file blocks as-is" and "rebuild field indexes now" options and leave all of the other options unselected. Reimport data: Arrange the found set to include all records except for the corrupt ones. Export the found set using the merge format. Write a script to truncate the table. (If you use "Delete All", and you have cascade delete in place, you may unwittingly delete records from other tables.) Import the good data back into the file. Import the corrupted records from a backup (if you can find a backup that still has those records non-corrupted). In my case, out of curiosity, I tried both of these options. Each one successfully resolved the data corruption. Summarizing the FileMaker Data Migration Tool In addition to being used as a deployment tool (to assist with the process of releasing development changes to production), the Data Migration Tool can also be used to recover from a damaged file by moving production data into a clone of a last known good backup. What was previously a cumbersome and time-consuming process is now both fast and easy. Data Migration Tool Overview for Recovery Here is quick guide to using the Data Migration Tool to recover from a damaged file: Before the problem occurs (start following these best practices now!): Set up backup schedules to create clones of your database files. Maintain a reasonably long history of backups and clones. I typically keep 7 daily and 12 weekly backups. Enable verification for your weekly, and, if possible, your daily backup schedules. Enable email notifications so that you will be informed if a file becomes damaged. Keep notes on the changes you deploy to production, both what they are and when they were made, ideally releasing them in batches. Once the problem occurs: If FileMaker Server reports that a consistency check failed, or if you are unable to open the database, copy (don't move) the damaged file to another folder. Recover the file (File menu > Recover). Decide on which clone you will use. Go as far back in time as you can without losing any development changes that you may have made to the file. Using the Data Migration Tool, specify the recovered damaged file as the source and the clone as the target. If the tool gives an error, open (locally, in FileMaker Pro) and then close the recovered file, and then try running the tool again. Moving Forward in FileMaker 17 If you have any questions about how to use the Data Migration Tool or any other new features included in FileMaker 17, please contact our team. We’re happy to help your team determine the best way to leverage them within your FileMaker solution. Resources Introducing FileMaker 17's FMDataMigration Command Line Tool (by Matt Hintz) Maintaining and recovering FileMaker Pro databases About recovering FileMaker Pro files Preventing database damage Damaged files Damaged layouts Checking file consistency Recovering files Setting advanced file recovery options How to Fully and Correctly Use FileMaker's Recovery Tool (by Makah Encarnacao) Comparing differences between two versions of the same file using FMDiff The post How to Recover from a Damaged File Using the FileMaker Data Migration Tool appeared first on Soliant Consulting.
Voir le billet d'origine
 

FileMaker 17 Executive Summary

Discover FileMaker 17 As always, many of us at Soliant Consulting have been involved in early beta testing programs and have had time to explore FileMaker 17 extensively. We have prepared an executive summary to share our thoughts on features of interest and how to leverage them best. This summary is a quick, top level review that touches on the new features of the platform and addresses the first questions one might have when considering an upgrade. Please fill out the form to receive a copy of the FileMaker 17 Executive Summary.
Complete the form to receive the executive summary:
Trouble with this form? Click here. The post FileMaker 17 Executive Summary appeared first on Soliant Consulting.
Voir le billet d'origine
 

PauseOnError 2018: Two Incredible Days with the FileMaker Community

In 2010, I attended my first PauseOnError in Portland. In 2011, I spoke in front of the FileMaker community for the first time, at PauseOnError in New York City. In 2018, I helped plan PauseOnError in New Orleans. Whoa. I’d worked with FileMaker for only a few years when I attended my first Pause. I was in awe of the presenters and attendees alike. There was a camaraderie that I didn’t know existed in a technical community. I was sitting on the sidelines admiring the masters play their game. It was fascinating and overwhelming and ridiculously cool. Fast forward to the year I decided to speak. We were in New York, where the weather was obnoxiously cold and somehow, I was sweating bullets. I was so nervous to stand in front of the pros. But from the second my presentation started, I was standing with them, and they were standing with me. The support was unbelievable. They treated me like an equal. And I survived. And fast forward to early 2018. Sara Severson said it best. Say the thing. Do the thing. I said I wanted to be part of the Pause committee for the Women of FileMaker (WoF). And just a few days ago, I helped kick off PauseOnError: Stand Tall in New Orleans. I had the honor of doing that with Lisette Wilson (Informing Designs) and Susan Fennema (Beyond the Chaos) standing with me. With the support and mentorship of John Sindelar (Seedcode) and Ernest Koe (Proof Group). What?!?! Was I sweating bullets? Absolutely. And each drop of sweat was worth it. We put our hearts and souls into that. And it took time for me to realize my own motivation: I wanted to make someone’s first Pause as amazing and life-changing as my first one was. I wanted to make sure each attendee had the opportunity to feel included, accepted, and empowered. I wanted to be a cheerleader for the attendees. And the attendees said their thing. And did their thing. Not only did Pause have a ton of first-time attendees, but many of them stepped out of their comfort zone and shared their story. There was a great mix of technical sessions (think Card Windows and cool API integrations) and a lot of business sessions (like learning about communication styles and how to manage projects). When sessions weren’t going on, there was so much time spent talking with each other in the hallways. With New Orleans as a stellar background to it all, many conversations carried on through dinner and field trips. I hope everyone walked away from Pause feeling a little more supported, a little more accepted, and a lot freer to be good at whatever their thing is. Will Mercer (Data Stride, Inc.) shared a personal story where he was told: After two days of intense discussions and lots of laughter, thank you to the FileMaker community for being unique, kind, and extremely generous. Thank you to everyone who stepped up to bat, even if you’d never batted before. And thank you to every mentor and leader who continues to give back, share more, and help others. Stand tall. PauseOnError is an unconference empowering developers and consultants to come together to share their stories. Organized by the Women of FileMaker, the event is open to individuals of all technical backgrounds and encourages collaboration and support. The post PauseOnError 2018: Two Incredible Days with the FileMaker Community appeared first on Soliant Consulting.
Voir le billet d'origine
 

Getting Started with FileMaker and REST

Representational State Transfer (REST) defines a set of standards and principals commonly used to provide web and application developers an Application Programming Interface (API). Built atop the HyperText Transfer Protocol (HTTP), REST is commonly used for viewing web pages. You are currently reading this blog post using HTTP. FileMaker and REST In every HTTP request, there is a specified method. If you type in a URL and press enter, the Method used is GET. If you submit a form on the web, you most likely use the POST Method. The difference is that a POST request can include a payload that is not part of the URL. GET requests, if they include data, will include a question mark at the end of a URL and path. This is followed by data that usually appears in key-value pairs. RESTful services may or may not use key-value pairs and instead include all needed data in the URL path. Usually, data is transferred in XML or JSON as part of a POST payload in the HTTP request. In general, following REST methodology, a GET request is used to read data, whereas a POST request is used to create a resource. These correlate to database interaction known as CRUD, or Create, Read, Update, and Delete. Modern versions of HTTP also support PUT and DELETE methods, which REST then commonly translates to Update and Delete database operations. PUT and DELETE are functionally identical to POST requests, the only difference being that the method specified is different. This also includes encrypted in-transit information if you are using SSL and specify "https" in your URL. FilerMaker "Insert from URL" Script Step With me so far? Good. So how does FileMaker work with RESTful APIs and web services? With FileMaker 16, there was a lot of changes to the Insert from URL script step that allows you to use cURL functions. This also works across the entire FileMaker platform, so this includes server-side scripts as well as WebDirect and FM Go. Anatomy of the script step: Figure 1: Configure the script step Figure 2: Specify target The script step is configurable with several options. You can specify a Target, which can either be a field or a variable (see Figure 2). To specify a variable, select that option and give the variable a name you can reference it with, so you can use it later. Whether you use a global variable or not depends on where you need to use it. Then specify the URL, which is the base URL and usually the complete path to the resource you are working with. Specify cURL Options Then there are the cURL options, which give you access to an entire library of functions for handling web requests. FileMaker supports quite a bit, but not all, cURL functionality. I recommend checking that documentation. There are a couple points of interest when working with cURL options in FileMaker, specifically. The syntax for specifying variables can be confusing. You create a variable like you normally would, with a single or double dollar sign. However, when specifying the calculation to result in your desired cURL options, the variable name is INSIDE the quote marks, like so: "--data @$myVariable" This makes more sense if you are familiar with using the curl application with command line in a terminal window. For example, to upload a file with a command line, you use the atmark (@) and then the path to the file you want to include. Similarly, an atmark tells the cURL options in FileMaker where the variable you want to include resides. Referencing variables this way will also take care of any needed quoting, so your data does not break during transit. When you send any kind of payload in the HTTP body using "--data" or "-d", then POST is used by default as the method. If you need another method, you can specify it with the "--request" or "-X" flag in your cURL options. Another point of note: using the "-D" or "--dump-header" option that allows you to get any returned HTTP headers and store them in a variable. This is especially important, as many RESTful services will return error codes as part of the HTTP header returned. By the way, most cURL options are specified with flags, like "-D" above, but most also have the option to use a more verbose variant, which can be more readable, like "--dump-header". They both work the same. One more...since most RESTful services expect the payload to be JSON, you will also want to specify that as an HTTP header, like so: " --header \"Content-Type: application/json\"" If the payload is XML, for example, you would change the content-type to match what you are sending, like text/xml. This will depend on the web service you are integrating with. Troubleshooting "Insert from URL" Scripts Trying to debug and troubleshoot when working with Insert from URL results can present challenges. It's a little like working blind, where you construct a request and send it off without seeing how the request is being received on the other side. There are a couple websites that allow you to create endpoints that log requests and then view them. In my experience, however, they can be unreliable or slow. To that end, I have written my own debugging tool that helps return information about requests sent with FileMaker. You can use it for free and put it on any web server that can serve PHP: https://github.com/SoliantMike/PHP-HTTPDebug If you already have FileMaker Server, you can simply enable the web server with PHP and use it from there. Once hosted, simply point your Insert from URL script to that PHP scripts URL and test any cURL options you need. Results are returned in plain text instead of HTML, since you would view the output in a FileMaker field or variable anyway. Other Factors Concerning FileMaker and REST You can encounter a host of other factors involved when working with APIs and web services. Those can include oAuth or information in your HTTP headers, such as signed requests or size information. It all depends on the service with which you integrate. This guide should help you start with the basics. Resources REST (Representational state transfer) CRUD (Create, read, update and delete) Available cURL options in FileMaker The post Getting Started with FileMaker and REST appeared first on Soliant Consulting.
Voir le billet d'origine
 

Your Guide to Using the FileMaker Data API to Enhance Your Application

What is the FileMaker Data API? Released in beta with FileMaker 16, the FileMaker Data API allows you to open up your FileMaker data to other systems. This makes the sharing of this data more straightforward than it’s been in the past. The functionality opens up your data capabilities through a variety of potential integrations. You can access your FileMaker data from any system that can make HTTP calls and accept JSON data in response. This creates hundreds, if not thousands, of opportunities for your organization. In the past, accessing your FileMaker data from outside systems required complex programming in XML, PHP or related technologies, often requiring the creation of middleware. With the FileMaker Data API, external systems can access FileMaker data directly, via the widely-used REST approach. This simplifies solutions and reduces the need for middleware or additional libraries such as ODBC. What Do You Need to Use the FileMaker Data API? You need a FileMaker Server license to use this functionality. How Can You Use the FileMaker Data API? The possibilities for this functionality are endless and ultimately depend on your business. The FileMaker Data API opens the door to your FileMaker data to work with other systems. This enhances your offerings and better serves your key audiences. You now have the capabilities of other systems at the disposal of your FileMaker data in a newer, faster, and more secure way. But what does this mean exactly? Here are a couple of use cases for several industries to give you an idea. Higher Education Colleges and universities can utilize the FileMaker API to bring data from various FileMaker solutions into common learning platforms. For example, they can connect Blackboard, a popular technology for student-teacher communication, with departmental systems that contain department-specific or course-specific information. From Blackboard, students could also modify data within individual departments’ FileMaker databases. Printing Large printing-software packages such as Heidelberg Prinect could query data from more agile line-of-business FileMaker systems. For example, sales leads stored in a FileMaker system could be queried in order to generate jobs and projects in the main Heidelberg system. Food & Beverage Companies with a wealth of product, distributor, customer, and other types of data at their fingertips have a significant opportunity to customize their offerings. First, however, they need to analyze their data with complex reporting to uncover necessary insights. With the new FileMaker Data API, data managers can connect their clients’ account data with Tableau. This popular data analytics platform makes analysis much easier and streamlined. School Districts While K-12 schools continue to heavily emphasize parent involvement in students’ education, many cannot determine the best way to communicate with parents about their students without reducing teachers’ time with students. For schools using a FileMaker database to track students’ progress, they can bridge the gap with a common communication application. This automatically pulls data from FileMaker and sending a daily update report to parents without monopolizing educators’ time. CMS Integration It’s been possible in the past to share FileMaker data with widely-used content management systems (CMS) such as WordPress, Drupal, and Joomla, to name a few. The FileMaker Data AI makes it faster and simpler. CMS users can inspect data stored in a FileMaker database, and integrate that data directly into web pages. Users could also send data back into FileMaker. For example, they can addresses and other profile information inside WordPress. This data would then be sent back and stored in a FileMaker System. Enterprise Integration Platforms Enterprise Integration Platforms such as Informatica and Dell Boomi bring together data from many disparate sources across an organization. For example, an organization may wish to bring together data from Salesforce, ERP systems, EDI systems, CMS systems, and distributor catalogs. With the FileMaker DATA API, these platforms can easily query data from FileMaker and include it in their overall integration architecture. Infinite Capabilities Of course, these are just a few examples. The FileMaker Data API can bridge thousands of applications to drive more power with your data. You can connect Quickbooks to FileMaker, pulling customer data into your invoice process automatically to make your internal workflows more efficient. Through a Toggl-FileMaker integration, you can report on how your employees spend their time by data organized in FileMaker, such as project or task data. We recommend brainstorming how your existing business applications could work together to improve efficiency and speed up your workflows. Then, you can move onto exploring other systems and how you can gain greater insights by connecting them with your FileMaker data. How Much Does the FileMaker Data API cost? This is a trickier question. At this point, it’s unclear how FileMaker plans to license this functionality. They probably won’t announce their intentions until FileMaker 17 is released. We don’t anticipate the FileMaker Data API carrying a significant added cost for typical users. Our guess is that costs will be data volume based, as opposed to call volume based. In other words, the more data you plan on sending through the API, the more you should expect to spend. This is all conjecture, though. We I do recommend getting an idea of what kind of value you expect so that when pricing is released, you can weigh costs versus benefits. Next Steps While still in beta, this functionality is already quite powerful. You can start exploring benefits for your organization right away and prepare for a full version launching with FileMaker 17. Since the announcement of the FileMaker Data API, we’ve been helping our clients understand and leverage its capabilities. We’ve been empowering organizations to connect their FileMaker data to external systems for years through our free SimpleFM and fmDotNet tools and have years of experiencing in this area. To showcase this experience, we will be delivering a session at this year’s FileMaker Developers Conference. Join us for “IoT and the FileMaker Data API: Sending Sensor Data to FileMaker Server from a Raspberry Pi.” We’re happy to help you navigate the best path forward with the new API. Contact us to schedule a call with our team of certified FileMaker consultants today. For a great introduction to how to use the FileMaker Data API functionality, check out this helpful article my team wrote. The post Your Guide to Using the FileMaker Data API to Enhance Your Application appeared first on Soliant Consulting.
Voir le billet d'origine
×