<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"
	xml:lang="en">
	<title>MonkeybreadSoftware Blog FileMaker</title>
	<subtitle></subtitle>
        <link rel="alternate" type="text/html" href="https://www.mbsplugins.de/filemaker.php"/>
        <link rel="self" type="application/atom+xml" href="https://www.mbsplugins.de/filemaker-atom.xml"/>
	<updated>2026-07-11T11:43:14+02:00</updated>
	<author>
	<name>Christian</name>
	<uri>https://www.mbsplugins.de/filemaker.php</uri>
	<email>Chef</email>
	</author>
	<id>tag:pivotpowered,2026:MonkeybreadSoftwareBlogFileMaker</id>
	<generator uri="http://www.pivotlog.net" version="Pivot - 1.40.8: 'Dreadwind'">Pivot</generator>
	<rights>Copyright (c) 2026, Authors of MonkeybreadSoftware Blog FileMaker</rights>
	
	
	
	<entry>
		<title>Improved calculation dialog in FileMaker</title>
		<link rel="alternate" type="text/html" href="https://www.mbsplugins.de/archive/2026-07-11/Improved_calculation_dialog_in/monkeybreadsoftware_blog_filemaker" />
		<updated>2026-07-11T11:43:00+02:00</updated>
		<published>2026-07-11T11:43:00+02:00</published>
		<id>tag:pivotpowered,2026:MonkeybreadSoftwareBlogFileMaker.6298</id>
		<link rel="related" type="text/html" href=""  />
		<summary type="text">The upcoming MBS FileMaker Plugin 16.3 version will have a few improvements to the calculation dialog for macOS.</summary>
        <content type="html" xml:lang="en" xml:base="https://www.mbsplugins.de/archive/2026-07-11/Improved_calculation_dialog_in/monkeybreadsoftware_blog_filemaker"><![CDATA[
                <p>The upcoming <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/">MBS FileMaker Plugin</a> 16.3 version will have a few improvements to the calculation dialog for macOS.</p>

<img src="http://www.mbsplugins.de/image/CalculationDialog.png" width="590" alt="FileMaker calculation dialog"><H3>Time measurement</H3>

<p>Whenever you develop a calculation, the MBS tools offer you additional things to do. You can check the syntax, format, execute and add or remove the table occurence names. For the first three you can press shift key to only check, format or execute the selected text.</p>

<p>Below the OK button, we show the time needed to execute the given calculation (or selection). Depending on how long it takes, we show &micro;s or ms as unit. Please note that the time includes the time for FileMaker to parse the formula.</p>


<H3>New shortcut</H3>

<p>You can press Command-Option-T in the calculation editor. If you have no text selected, we insert the name of the current table occurence from the top left popup menu. But if you have text selected, we try to find that text in the popup and select it. This way you can quickly jump to the table occurence and FileMaker shows the field names on the left.</p>


<p>Please try the 16.3 beta versions if you like to test this.</p>
		]]></content>
		<author>
			<name>Chef</name>
		</author>
	</entry>
	
	
	
	<entry>
		<title>To HTML functions</title>
		<link rel="alternate" type="text/html" href="https://www.mbsplugins.de/archive/2026-07-08/To_HTML_functions/monkeybreadsoftware_blog_filemaker" />
		<updated>2026-07-08T10:20:00+02:00</updated>
		<published>2026-07-08T10:20:00+02:00</published>
		<id>tag:pivotpowered,2026:MonkeybreadSoftwareBlogFileMaker.6295</id>
		<link rel="related" type="text/html" href=""  />
		<summary type="text">We have a few functions in the MBS FileMaker Plugin to convert things to HTML. That is useful to visualize HTML or JSON. You may convert text, styled text or MarkDown to HTML.</summary>
        <content type="html" xml:lang="en" xml:base="https://www.mbsplugins.de/archive/2026-07-08/To_HTML_functions/monkeybreadsoftware_blog_filemaker"><![CDATA[
                <p>
We have a few functions in the <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/">MBS FileMaker Plugin</a> to convert things to HTML. That is useful to visualize HTML or JSON. You may convert text, styled text or MarkDown to HTML.</p><h3>
JSON
</h3>

<p>We often have to debug our code for web services and display JSON for debugging. There our <a rel="external" href="https://www.mbsplugins.eu/JSONToHTML.shtml">JSON.ToHTML</a> function helps a lot. We can pass the JSON and receive some HTML, which we display into a web viewer.</p>

<p>e.g.</p>

<code>MBS("<a rel="external" href="https://www.mbsplugins.eu/JSONToHTML.shtml">JSON.ToHTML</a>"; "{\"FirstName\": \"John\", \"id\": 123}")</code>

<p>Returns:</p>

<pre>
&lt;html&gt;
&lt;head&gt;
   &lt;meta http-equiv="content-type" content="text/html; charset=utf-8"&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div class="JSONObject"&gt;
&lt;table border=0 cellpadding=1&gt;
&lt;tr class="odd"&gt;&lt;td&gt;FirstName&lt;/td&gt;
&lt;td&gt;John&lt;/td&gt;&lt;/tr&gt;
&lt;tr class="even"&gt;&lt;td&gt;id&lt;/td&gt;
&lt;td&gt;123&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre>

<p>Here is a little script to take some html, convert it to HTML and load it into a web viewer:</p>

<code>
# now make html
Set Variable [ $html ; Value: MBS( "JSON.ToHTML"; $json) ] 
# and show in web viewer
Set Web Viewer [ Object Name: "web" ; URL: "data:text/html;charset=utf-8," & $html ]
</code>

<p>Which looks like this:</p>

<blockquote>
<div class="JSONObject"><table border="0" cellpadding="1"><tr class="odd"><td>FirstName</td><td>John</td></tr><tr class="even"><td>id</td><td>123</td></tr></table></div>
</blockquote>

<h3>
XML
</h3>

<p>Similar to JSON above, you may want to display XML. Our <a rel="external" href="https://www.mbsplugins.eu/XMLToHTML.shtml">XML.ToHTML</a> functon builds a HTML with tables to show the various layers in an XML document. All the keys and values show up with indention to show the level. You may use a CSS for odd and even rows to colorize the cell backgrounds.</p>

<p>e.g.</p>

<code>MBS("XML.ToHTML"; "<test><id>1234</id><name>John</name></test>"; 0; "")</code>

<p>Returns:</p>

<pre>
&lt;html&gt;
&lt;head&gt;
   &lt;meta http-equiv="content-type" content="text/html; charset=utf-8"&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;h3&gt;test&lt;/h3&gt;&lt;div class="Elements"&gt;
&lt;table border=0 cellpadding=1&gt;
&lt;tr class="odd"&gt;&lt;td&gt;id&lt;/td&gt;
&lt;td&gt;&lt;p&gt;1234&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class="even"&gt;&lt;td&gt;name&lt;/td&gt;
&lt;td&gt;&lt;p&gt;John&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;

</pre>

<p>Which looks like this:</p>

<blockquote>
<h3>test</h3><div class="Elements"><table border="0" cellpadding="1"><tr class="odd"><td>id</td><td><p>1234</p></td></tr><tr class="even"><td>name</td><td><p>John</p></td></tr></table></div>

</blockquote>



<h3>
Styled Text
</h3>

<p>You may want to have users type some styled text in a field. Later you convert the styled text to HTML with our <a rel="external" href="https://www.mbsplugins.eu/TextTextToHTML.shtml">Text.TextToHTML</a> function or GetAsCSS(). Our function does have a few options for the HTML generation.</p>

<p>e.g.</p>
<code>MBS( "Text.TextToHTML"; "Hello World¶¶Just a test¶¶&#128512;"; 32 + 1 )</code>

<p>Returns: 
<pre>
&lt;p&gt;Hello World&lt;/p&gt;
&lt;p&gt;
Just a test&lt;/p&gt;
&lt;p&gt;
&amp;#128512;&lt;/p&gt;
</pre>

<p>Which looks like this:</p>

<blockquote>
<p>Hello World</p>
<p>
Just a test</p>
<p>
&#128512;</p>
</blockquote>

<h3>
Text
</h3>

<p>When you have text and you like to include it in a HTML piece, you need to encode the various special characters. Our <a rel="external" href="https://www.mbsplugins.eu/TextEncodeToHTML.shtml">Text.EncodeToHTML</a> function looks for various special characters and does proper escaping. This way you guarantee that all the accents, asian characters or even smileys survive when embedding some text in HTML, e.g. for an email.</p>

<p>e.g.</p>

<code>MBS( "Text.EncodeToHTML"; "Hast Du &Auml;pfel? &#127822;" )</code>

<p>Returns: </p>
<pre>Hast Du &amp;Auml;pfel? &amp;#127822;</pre>

<p>Which looks like this:</p>

<blockquote>Hast Du &Auml;pfel? &#127822;
</blockquote>

<h3>MarkDown</h3>

<p>For MarkDown text, you can use our <a rel="external" href="https://www.mbsplugins.eu/component_MarkDown.shtml" translate="no">Markdown</a> functions to convert to html and show in a web viewer. For this you combine the <a rel="external" href="https://www.mbsplugins.eu/MarkDownCreate.shtml">MarkDown.Create</a> function with either the <a rel="external" href="https://www.mbsplugins.eu/MarkDownHTML.shtml">MarkDown.HTML</a> function for just the html snippet, or you use the <a rel="external" href="https://www.mbsplugins.eu/MarkDownHTMLDocument.shtml">MarkDown.HTMLDocument</a> function to get a full document.</p>

<p>e.g.</p>

<pre>
Set Variable [ $r ; Value: MBS("MarkDown.Create"; "Text attributes *italic*, **bold**, `monospace`, ~~strikethrough~~ .") ] 
Set Variable [ $html ; Value: MBS("MarkDown.HTMLDocument"; $r) ] 
Set Variable [ $r ; Value: MBS("MarkDown.Release"; $r) ]
</pre>

<h3>From HTML</H3>

<p>Sometimes you need the other way around. Parse the HTML into something useful. Our <a rel="external" href="https://www.mbsplugins.eu/TextHTMLtoJSON.shtml">Text.HTMLtoJSON</a> parses the HTML using the tidy library and outputs the nodes as JSON. This way you can use <a rel="external" href="https://www.mbsplugins.eu/component_JSON.shtml" translate="no">JSON</a> functions to work on the HTML and read values. Especially <a rel="external" href="https://www.mbsplugins.eu/JSONQuery.shtml">JSON.Query</a> and <a rel="external" href="https://www.mbsplugins.eu/JSONSearch.shtml">JSON.Search</a> may help here to find values in the parsed HTML.</p>

<p>When you like to convert the html to styled text, we have the <a rel="external" href="https://www.mbsplugins.eu/TextHTMLtoStyledText.shtml">Text.HTMLtoStyledText</a> function. It parses the HTML and converts the styles FileMaker supports from HTML tags to something FileMaker can understand. Various CSS rules will not work, but in general it works often fine for HTML from emails with inline styles.</p>
		]]></content>
		<author>
			<name>Chef</name>
		</author>
	</entry>
	
	
	
	<entry>
		<title>MBS FileMaker Plugin, version 16.3pr5</title>
		<link rel="alternate" type="text/html" href="https://www.mbsplugins.de/archive/2026-07-06/MBS_FileMaker_Plugin_version_1/monkeybreadsoftware_blog_filemaker" />
		<updated>2026-07-06T11:10:00+02:00</updated>
		<published>2026-07-06T11:10:00+02:00</published>
		<id>tag:pivotpowered,2026:MonkeybreadSoftwareBlogFileMaker.6292</id>
		<link rel="related" type="text/html" href=""  />
		<summary type="text">New in this prerelease of version 16.3 of the MBS FileMaker Plugin:


Fixed an edge case in Time.Parse to work better with dates past midnight. We wrap to next day then.
Patched libssh2 for CVE-2026-55200.
Updated SQLite to version 3.53.3.
Updated Xcode to version 26.6.
Improved script search.
The context menu in the Script Workspace shows a command to open the help for a script step in English.



New functions in documentation

Download Links: Download Mac dmg or Download Windows/Linux zip


Downloads at monkeybreadsoftware.com/filemaker/files/Prerelease/: 


You can subscribe to our FileMaker mailing list to get notified for new pre-release and release versions.</summary>
        <content type="html" xml:lang="en" xml:base="https://www.mbsplugins.de/archive/2026-07-06/MBS_FileMaker_Plugin_version_1/monkeybreadsoftware_blog_filemaker"><![CDATA[
                <img src="http://www.mbsplugins.de/image/fmplugin19.png" width="200" align="right">New in this prerelease of version 16.3 of the <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/">MBS FileMaker Plugin</a>:
<ul>

<li>Fixed an edge case in <a rel="external" href="https://www.mbsplugins.eu/TimeParse.shtml">Time.Parse</a> to work better with dates past midnight. We wrap to next day then.</li>
<li>Patched libssh2 for CVE-2026-55200.</li>
<li>Updated SQLite to version 3.53.3.</li>
<li>Updated Xcode to version 26.6.</li>
<li>Improved script search.</li>
<li>The context menu in the Script Workspace shows a command to open the help for a script step in English.</li>

</ul>

<p><a rel="external" href="https://www.mbsplugins.eu/newinversion163.shtml">New functions in documentation</a></p>

<p>Download Links: <a rel="external" href="https://monkeybreadsoftware.com/cgi-bin/prerelease.php?type=filemaker&format=dmg&cdn=1" download>Download Mac dmg</a> or <a rel="external" href="https://monkeybreadsoftware.com/cgi-bin/prerelease.php?type=filemaker&format=zip&cdn=1" download>Download Windows/Linux zip</a></p>

<br  clear="all" />
<p>Downloads at <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/files/Prerelease/">monkeybreadsoftware.com/filemaker/files/Prerelease/</a>: </p>
<br  clear="all" />

<p>You can subscribe to our <a rel="external" href="https://monkeybreadsoftware.com/mbsfmplugin" title="">FileMaker mailing list</a> to get notified for new pre-release and release versions.</p>
		]]></content>
		<author>
			<name>Chef</name>
		</author>
	</entry>
	
	
	
	<entry>
		<title>MBS @ FMTraining.TV - Shell Asynchronously with the FileMaker MBS Plug-in</title>
		<link rel="alternate" type="text/html" href="https://www.mbsplugins.de/archive/2026-07-04/MBS_@_FMTrainingTV_-_Shell_Asy/monkeybreadsoftware_blog_filemaker" />
		<updated>2026-07-04T07:52:00+02:00</updated>
		<published>2026-07-04T07:52:00+02:00</published>
		<id>tag:pivotpowered,2026:MonkeybreadSoftwareBlogFileMaker.6291</id>
		<link rel="related" type="text/html" href=""  />
		<summary type="text">Check out the FMTraining.tv website. Richard Carlton and his team do a daily free live stream about FileMaker to watch. 

A few days ago Christian Schmitz from Monkeybread Software joined a live episode to talk a bit about the MBS FileMaker Plugin. Watch it on YouTube.



We talk about the our Shell functions and how to run command line tools asynchronously in the background.</summary>
        <content type="html" xml:lang="en" xml:base="https://www.mbsplugins.de/archive/2026-07-04/MBS_@_FMTrainingTV_-_Shell_Asy/monkeybreadsoftware_blog_filemaker"><![CDATA[
                <p>Check out the <a rel="external" href="https://fmtraining.tv/">FMTraining.tv</a> website. Richard Carlton and his team do a <a rel="external" href="https://fmtraining.tv/#LIVE" title="">daily free live stream</a> about FileMaker to watch. </p>

<p>A few days ago Christian Schmitz from Monkeybread Software joined a live episode to talk a bit about the <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/">MBS FileMaker Plugin</a>. Watch it on <a rel="external" href="https://www.youtube.com/watch?v=2LdeIey0bK8" title="">YouTube</a>.</p>

<a rel="external" href="https://www.youtube.com/watch?v=BZaahEDAmAI"><img src="http://www.mbsplugins.de/image/mbsfmtraining88.jpg" width="640" height="360"></a>

<p>We talk about the our <a rel="external" href="https://www.mbsplugins.eu/component_Shell.shtml" translate="no">Shell</a> functions and how to run command line tools asynchronously in the background.</p><p>More videos</p>
<ul>

<li><a rel="external" href="https://www.youtube.com/watch?v=BZaahEDAmAI">Shell Asynchronously with the FileMaker MBS Plug-in</a></li>
<li><a rel="external" href="https://www.youtube.com/watch?v=2LdeIey0bK8">FileMaker MonkeyBread Plug-in 16.2 Update</a></li>
<li><a rel="external" href="https://www.youtube.com/watch?v=mK8mmHaRxW8">MonkeyBread Plug-in PDFs & Search Functionality in FileMaker Q&amp;A/a></li>
<li><a rel="external" href="https://www.youtube.com/watch?v=66IDZqfonYw">FileMaker MonkeyBread Plug-in 16.1 Update</a></li>
<li><a rel="external" href="https://www.youtube.com/watch?v=3zFhi2oNRTI">Installing the MBS Plug-in In FileMaker Via Script</a></li>
<li><a rel="external" href="https://www.youtube.com/watch?v=7iCFkkoodNs">FileMaker MonkeyBread Plug-in 16.0 Update</a></li>
<li><a rel="external" href="https://www.youtube.com/watch?v=e3EIDmbZFDA">FileMaker MonkeyBread Plug-in 15.5 Update</a></li>
<li><a rel="external" href="https://www.youtube.com/watch?v=4NJUfNedO60">FileMaker MBS Plug-in Q&A</a></li>
<li><a rel="external" href="https://www.youtube.com/watch?v=-EQ85M_q-Tw">FileMaker MonkeyBread Plug-in 15.4 Update</a></li>
<li><a rel="external" href="https://www.youtube.com/watch?v=BRunK_N1OR8">Make iOS Apps with the FileMaker App SDK &amp; the MonkeyBread Plug-in</a></li>

<li>More in the <a rel="external" href="https://youtube.com/playlist?list=PLvH3LgGie0XOOeMweFff2blaukf47WJyi">YouTube playlist...</a></li>
</ul>
<p>Do you like this video? Please let us and RCC know!</p>
		]]></content>
		<author>
			<name>Chef</name>
		</author>
	</entry>
	
	
	
	<entry>
		<title>MBS Plugin documentation now available as Markdown files</title>
		<link rel="alternate" type="text/html" href="https://www.mbsplugins.de/archive/2026-07-03/MBS_Plugin_documentation_now_a/monkeybreadsoftware_blog_filemaker" />
		<updated>2026-07-03T07:40:00+02:00</updated>
		<published>2026-07-03T07:40:00+02:00</published>
		<id>tag:pivotpowered,2026:MonkeybreadSoftwareBlogFileMaker.6290</id>
		<link rel="related" type="text/html" href=""  />
		<summary type="text">We are happy to announce that the MBS FileMaker Plugin documentation is now available as Markdown (.md) files.
Markdown is a simple, portable format that works well with many tools, editors, documentation systems, and AI workflows. If you want to read, process, search, or automate with our documentation, you can now access the Markdown version directly.</summary>
        <content type="html" xml:lang="en" xml:base="https://www.mbsplugins.de/archive/2026-07-03/MBS_Plugin_documentation_now_a/monkeybreadsoftware_blog_filemaker"><![CDATA[
                <p>We are happy to announce that the <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/">MBS FileMaker Plugin</a> documentation is now available as Markdown (<code>.md</code>) files.</p>
<p>Markdown is a simple, portable format that works well with many tools, editors, documentation systems, and AI workflows. If you want to read, process, search, or automate with our documentation, you can now access the Markdown version directly.</p><h3>Getting the Markdown version of any documentation page</h3>
<p>Every MBS Plugin documentation page that normally ends with:</p>
<pre><code>.shtml
</code></pre>
<p>now also has a Markdown version.</p>
<p>Simply replace:</p>
<pre><code>.shtml
</code></pre>
<p>with:</p>
<pre><code>.md
</code></pre>
<p>in the URL.</p>
<p>For example, if you are viewing a documentation page:</p>
<pre><code>FunctionName.shtml
</code></pre>
<p>you can access:</p>
<pre><code>FunctionName.md
</code></pre>
<p>At the bottom of every documentation page, we also added links that let you directly open the Markdown version.</p>
<h3>Use the documentation with your favorite tools</h3>
<p>The Markdown files make it easier to use MBS documentation in your own workflows. You can import the documentation into tools, build custom searches, create scripts, or process the information with your own utilities.</p>
<p>For users who like to automate things, we provide additional resources on our <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/Dash/" title="">documentation dash page</a>.</p>

<h3>Dash support</h3>
<p>You can use our plugin help directly in the Dash application.</p>
<p>Dash is available for macOS from: <a rel="external" href="https://kapeli.com/dash">kapeli.com/dash</a></p>
<p>To install the MBS FileMaker Plugin documentation in Dash, use the installation link provided on the dashboard.</p>
<p>For Windows and Linux, you can use the Zeal application. You can manually download the docset and place it into your existing docsets folder.</p>
<p>Available downloads include:</p>
<ul>
<li><a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/Dash/MBS.zip">MBS.zip</a></li>
<li><a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/Dash/MBS.tgz">MBS.tgz</a></li>
</ul>
<p>Both archives contain the same documentation content.</p>
<h3>Build your own database or AI assistant</h3>
<p>If you want to create your own utility, search engine, documentation browser, or AI assistant based on MBS information, you can download our exported files.</p>
<p>Available resources include:</p>
<table>

<tbody><tr><td valign="top" width="150"><a rel="external" href="https://www.mbsplugins.eu/markdown-export.zip">markdown-export.zip</a></td><td>Documentation as Markdown.</td><td></td></tr>
<tr><td valign="top"><a rel="external" href="https://www.mbsplugins.eu/all.txt">all.txt</a></td><td>All functions listed with description line, platforms and version.</td><td></td></tr>
<tr><td valign="top"><a rel="external" href="https://www.mbsplugins.eu/allDeclaration.txt">allDeclaration.txt</a></td><td>All function declarations with parameters.</td></tr>
<tr><td valign="top"><a rel="external" href="BlogFileMaker.json">BlogFileMaker.json</a></td><td>JSON file with all FileMaker related blog articles</td></tr>
<tr><td valign="top"><a rel="external" href="MBS.zip" download="">MBS.zip</a></td><td>Zip with docset, which has our documentation html files in MBS.docset/Contents/Resources/Documents folder.</td>
</tr></tbody></table>
<p>The Markdown export is especially useful for AI training workflows, indexing systems, and custom documentation tools.</p>
<p>The function list files are also structured to make processing easy. Each function entry contains the function name, documentation file name, short description, supported platforms, version information, and a separator line.</p>
<h3>More possibilities with MBS documentation</h3>
<p>If you are building an AI bot, documentation assistant, or developer tool, you can now use the Markdown export as a clean source format.</p>
<p>We hope these new options make it easier to work with MBS Plugin documentation — whether you prefer reading in a browser, using Dash or Zeal, or building your own tools.</p>
<p>Happy coding!</p>
		]]></content>
		<author>
			<name>Chef</name>
		</author>
	</entry>
	
	
	
	<entry>
		<title>MBS FileMaker Plugin, version 16.3pr4</title>
		<link rel="alternate" type="text/html" href="https://www.mbsplugins.de/archive/2026-06-29/MBS_FileMaker_Plugin_version_1/monkeybreadsoftware_blog_filemaker" />
		<updated>2026-06-29T08:52:00+02:00</updated>
		<published>2026-06-29T08:52:00+02:00</published>
		<id>tag:pivotpowered,2026:MonkeybreadSoftwareBlogFileMaker.6285</id>
		<link rel="related" type="text/html" href=""  />
		<summary type="text">New in this prerelease of version 16.3 of the MBS FileMaker Plugin:


Improved display of calculation time.
Tuned the script search.
Updated CURL library to version 8.21.0.
Deprecated CURL.SetOptionStreamDepends and CURL.SetOptionStreamDependsE functions.
Updated libarchive to version 3.8.8.
Improved script search. You can skip disabled script steps.
Updated expat to version 2.8.2.
Added ScriptWorkspace.Steps function.
Improved GMImage.WriteToWebPContainer to write WEBP containers instead of FILE containers on FileMaker 26.



New functions in documentation

Download Links: Download Mac dmg or Download Windows/Linux zip


Downloads at monkeybreadsoftware.com/filemaker/files/Prerelease/: 


You can subscribe to our FileMaker mailing list to get notified for new pre-release and release versions.</summary>
        <content type="html" xml:lang="en" xml:base="https://www.mbsplugins.de/archive/2026-06-29/MBS_FileMaker_Plugin_version_1/monkeybreadsoftware_blog_filemaker"><![CDATA[
                <img src="http://www.mbsplugins.de/image/fmplugin19.png" width="200" align="right">New in this prerelease of version 16.3 of the <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/">MBS FileMaker Plugin</a>:
<ul>

<li>Improved display of calculation time.</li>
<li>Tuned the script search.</li>
<li>Updated CURL library to version 8.21.0.</li>
<li>Deprecated <a rel="external" href="https://www.mbsplugins.eu/CURLSetOptionStreamDepends.shtml">CURL.SetOptionStreamDepends</a> and <a rel="external" href="https://www.mbsplugins.eu/CURLSetOptionStreamDependsE.shtml">CURL.SetOptionStreamDependsE</a> functions.</li>
<li>Updated libarchive to version 3.8.8.</li>
<li>Improved script search. You can skip disabled script steps.</li>
<li>Updated expat to version 2.8.2.</li>
<li>Added <a rel="external" href="https://www.mbsplugins.eu/ScriptWorkspaceSteps.shtml">ScriptWorkspace.Steps</a> function.</li>
<li>Improved <a rel="external" href="https://www.mbsplugins.eu/GMImageWriteToWebPContainer.shtml">GMImage.WriteToWebPContainer</a> to write WEBP containers instead of FILE containers on FileMaker 26.</li>

</ul>

<p><a rel="external" href="https://www.mbsplugins.eu/newinversion163.shtml">New functions in documentation</a></p>

<p>Download Links: <a rel="external" href="https://monkeybreadsoftware.com/cgi-bin/prerelease.php?type=filemaker&format=dmg&cdn=1" download>Download Mac dmg</a> or <a rel="external" href="https://monkeybreadsoftware.com/cgi-bin/prerelease.php?type=filemaker&format=zip&cdn=1" download>Download Windows/Linux zip</a></p>

<br  clear="all" />
<p>Downloads at <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/files/Prerelease/">monkeybreadsoftware.com/filemaker/files/Prerelease/</a>: </p>
<br  clear="all" />

<p>You can subscribe to our <a rel="external" href="https://monkeybreadsoftware.com/mbsfmplugin" title="">FileMaker mailing list</a> to get notified for new pre-release and release versions.</p>
		]]></content>
		<author>
			<name>Chef</name>
		</author>
	</entry>
	
	
	
	<entry>
		<title>FileMaker Script Steps over time</title>
		<link rel="alternate" type="text/html" href="https://www.mbsplugins.de/archive/2026-06-26/FileMaker_Script_Steps_over_ti/monkeybreadsoftware_blog_filemaker" />
		<updated>2026-06-26T09:58:00+02:00</updated>
		<published>2026-06-26T09:58:00+02:00</published>
		<id>tag:pivotpowered,2026:MonkeybreadSoftwareBlogFileMaker.6284</id>
		<link rel="related" type="text/html" href=""  />
		<summary type="text">We compared availability of script steps in FileMaker to see what changes from version to version.

We loaded all the script steps in a little database for version 19.0.1, 20.1.2, 21.0.1, 22.0.6 and 26.0.1 and run a few queries on the data.</summary>
        <content type="html" xml:lang="en" xml:base="https://www.mbsplugins.de/archive/2026-06-26/FileMaker_Script_Steps_over_ti/monkeybreadsoftware_blog_filemaker"><![CDATA[
                <p>
We compared availability of script steps in FileMaker to see what changes from version to version.</p>

<p>We loaded all the script steps in a little database for version 19.0.1, 20.1.2, 21.0.1, 22.0.6 and 26.0.1 and run a few queries on the data.</p><h4>New steps in 20:</h4>

<ul>
<li>Commit Transaction
<li>Open Transaction
<li>Perform Script on Server with Callback
<li>Revert Transaction
<li>Set Dictionary
<li>Set Session Identifier
<li>Trigger Claris Connect Flow
</ul>

<h4>Changes</h4>
<ul>
<li>Install Plug-In File	enabled for Data API
<li>Save Records as PDF	enabled for Data 
<li>Save a Copy as XML	enabled for Server
</ul>

<h4>New steps in 21:</h4>
<ul>
<li>Configure AI Account
<li>Insert Embedding
<li>Insert Embedding in Found Set
<li>Perform Semantic Find
<li>Set AI Call Logging
</ul>

<h4>Changes</h4>
<ul>
<li>Configure Local Notification	enabled for Mac &amp; Win
<li>Set Error Logging	enabled for Data API, Web &amp; Server
</ul>

<h4>New steps in 22:</h4>
<ul>
<li>Configure Prompt Template
<li>Configure RAG Account 
<li>Configure Regression Model
<li>Fine-Tune Model
<li>Generate Response from Model
<li>Go to List of Records
<li>Open Settings
<li>Perform Find by Natural Language
<li>Perform RAG Action
<li>Perform SQL Query by Natural Language
<li>Save Records as JSONL
<li>Set Revert Transaction on Error
</ul>

<h4>Changes</h4>
<ul>
<li>Perform Script on Server	enabled for Server
</ul>

<h4>New steps in 26:</h4>
<ul>
<li>Append PDF
<li>Cancel PDF
<li>Close PDF
<li>Configure Persistent Data
<li>Create PDF
<li>Flush Web Viewer Cookies
<li>Insert Image Caption
<li>Insert Image Captions in Found Set
<li>Open PDF
<li>Print PDF
</ul>

<h4>Changes</h4>
<ul>
<li>Export Field Contents	enabled for Data API and Server
</ul>


<p>And here is a list of all script steps and their availability:</p>

<table cellpadding="3">
<tr><th>id</th><th>Name</th><th>Mac</th><th>Win</th><th>iOS</th><th>Server</th><th>Data API</th><th>Web Direct</th></tr>
<tr><td>89</td><td># (comment)</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>134</td><td>Add Account</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>31</td><td>Adjust Window</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>✔</td></tr>
<tr><td>115</td><td>Allow Formatting Bar</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>85</td><td>Allow User Abort</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>244</td><td>Append PDF</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>120</td><td>Arrange All Windows</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>177</td><td>AVPlayer Play</td><td>-</td><td>-</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>179</td><td>AVPlayer Set Options</td><td>-</td><td>-</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>178</td><td>AVPlayer Set Playback State</td><td>-</td><td>-</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>93</td><td>Beep</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>247</td><td>Cancel PDF</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>83</td><td>Change Password</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>20</td><td>Check Found Set</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>19</td><td>Check Record</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>18</td><td>Check Selection</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>49</td><td>Clear</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>196</td><td>Close Data File</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td></tr>
<tr><td>34</td><td>Close File</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>245</td><td>Close PDF</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>169</td><td>Close Popover</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>✔</td></tr>
<tr><td>121</td><td>Close Window</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>75</td><td>Commit Records/Requests</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>206</td><td>Commit Transaction</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>212</td><td>Configure AI Account</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>187</td><td>Configure Local Notification</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>202</td><td>Configure Machine Learning Model</td><td>✔</td><td>-</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>201</td><td>Configure NFC Reading</td><td>-</td><td>-</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>238</td><td>Configure Persistent Data</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>226</td><td>Configure Prompt Template</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>227</td><td>Configure RAG Account </td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>185</td><td>Configure Region Monitor Script</td><td>-</td><td>-</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>222</td><td>Configure Regression Model</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>126</td><td>Constrain Found Set</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>139</td><td>Convert File</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>47</td><td>Copy</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>98</td><td>Copy All Records/Requests</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td></tr>
<tr><td>101</td><td>Copy Record/Request</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td></tr>
<tr><td>106</td><td>Correct Word</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>190</td><td>Create Data File</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td></tr>
<tr><td>243</td><td>Create PDF</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>46</td><td>Cut</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>135</td><td>Delete Account</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>10</td><td>Delete All Records</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>197</td><td>Delete File</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td></tr>
<tr><td>104</td><td>Delete Portal Row</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>9</td><td>Delete Record/Request</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>65</td><td>Dial Phone</td><td>-</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>8</td><td>Duplicate Record/Request</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>109</td><td>Edit User Dictionary</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>69</td><td>Else</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>125</td><td>Else If</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>137</td><td>Enable Account</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>174</td><td>Enable Touch Keyboard</td><td>-</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>70</td><td>End If</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>73</td><td>End Loop</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>55</td><td>Enter Browse Mode</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>22</td><td>Enter Find Mode</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>41</td><td>Enter Preview Mode</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>203</td><td>Execute FileMaker Data API</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>117</td><td>Execute SQL</td><td>✔</td><td>✔</td><td>-</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>44</td><td>Exit Application</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>✔</td></tr>
<tr><td>72</td><td>Exit Loop If</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>103</td><td>Exit Script</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>132</td><td>Export Field Contents</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>36</td><td>Export Records</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>✔</td></tr>
<tr><td>127</td><td>Extend Found Set</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>155</td><td>Find Matching Records</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>213</td><td>Fine-Tune Model</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>102</td><td>Flush Cache to Disk</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>237</td><td>Flush Web Viewer Cookies</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>79</td><td>Freeze Window</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>✔</td></tr>
<tr><td>220</td><td>Generate Response from Model</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>194</td><td>Get Data File Position</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td></tr>
<tr><td>188</td><td>Get File Exists</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td></tr>
<tr><td>189</td><td>Get File Size</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td></tr>
<tr><td>181</td><td>Get Folder Path</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>17</td><td>Go to Field</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>6</td><td>Go to Layout</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>228</td><td>Go to List of Records</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>4</td><td>Go to Next Field</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>145</td><td>Go to Object</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>99</td><td>Go to Portal Row</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>5</td><td>Go to Previous Field</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>16</td><td>Go to Record/Request/Page</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>74</td><td>Go to Related Record</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>90</td><td>Halt Script</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>68</td><td>If</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>35</td><td>Import Records</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>✔</td></tr>
<tr><td>159</td><td>Insert Audio/Video</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>✔</td></tr>
<tr><td>77</td><td>Insert Calculated Result</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>13</td><td>Insert Current Date</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>14</td><td>Insert Current Time</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>60</td><td>Insert Current User Name</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>215</td><td>Insert Embedding</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>216</td><td>Insert Embedding in Found Set</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>131</td><td>Insert File</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>✔</td></tr>
<tr><td>161</td><td>Insert from Device</td><td>-</td><td>-</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>11</td><td>Insert from Index</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>12</td><td>Insert from Last Visited</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>160</td><td>Insert from URL</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>241</td><td>Insert Image Caption</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>240</td><td>Insert Image Captions in Found Set</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>158</td><td>Insert PDF</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>✔</td></tr>
<tr><td>56</td><td>Insert Picture</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>✔</td></tr>
<tr><td>61</td><td>Insert Text</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>142</td><td>Install Menu Set</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>148</td><td>Install OnTimer Script</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>✔</td></tr>
<tr><td>157</td><td>Install Plug-In File</td><td>✔</td><td>✔</td><td>-</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>71</td><td>Loop</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>24</td><td>Modify Last Find</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>119</td><td>Move/Resize Window</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>82</td><td>New File</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>7</td><td>New Record/Request</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>122</td><td>New Window</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>26</td><td>Omit Multiple Records</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>25</td><td>Omit Record</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>191</td><td>Open Data File</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td></tr>
<tr><td>149</td><td>Open Edit Saved Finds</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>183</td><td>Open Favorites</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>33</td><td>Open File</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>114</td><td>Open File Options</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>129</td><td>Open Find/Replace</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>32</td><td>Open Help</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>118</td><td>Open Hosts</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>156</td><td>Open Manage Containers</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>140</td><td>Open Manage Data Sources</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>38</td><td>Open Manage Database</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>151</td><td>Open Manage Layouts</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>165</td><td>Open Manage Themes</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>112</td><td>Open Manage Value Lists</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>246</td><td>Open PDF</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>133</td><td>Open Record/Request</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>88</td><td>Open Script Workspace</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>105</td><td>Open Settings</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>113</td><td>Open Sharing</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>✔</td><td>✔</td></tr>
<tr><td>205</td><td>Open Transaction</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>172</td><td>Open Upload to Host</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>111</td><td>Open URL</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>✔</td></tr>
<tr><td>48</td><td>Paste</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>62</td><td>Pause/Resume Script</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>67</td><td>Perform AppleScript</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>28</td><td>Perform Find</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>221</td><td>Perform Find by Natural Language</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>128</td><td>Perform Find/Replace</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>175</td><td>Perform JavaScript in Web Viewer</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>✔</td></tr>
<tr><td>150</td><td>Perform Quick Find</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>219</td><td>Perform RAG Action</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>1</td><td>Perform Script</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>164</td><td>Perform Script on Server</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>210</td><td>Perform Script on Server with Callback</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>✔</td></tr>
<tr><td>218</td><td>Perform Semantic Find</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>214</td><td>Perform SQL Query by Natural Language</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>43</td><td>Print</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>✔</td></tr>
<tr><td>242</td><td>Print PDF</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>✔</td></tr>
<tr><td>42</td><td>Print Setup</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>✔</td></tr>
<tr><td>138</td><td>Re-Login</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>193</td><td>Read from Data File</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td></tr>
<tr><td>95</td><td>Recover File</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>167</td><td>Refresh Object</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>✔</td></tr>
<tr><td>180</td><td>Refresh Portal</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>✔</td></tr>
<tr><td>80</td><td>Refresh Window</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>40</td><td>Relookup Field Contents</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>199</td><td>Rename File</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td></tr>
<tr><td>91</td><td>Replace Field Contents</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>136</td><td>Reset Account Password</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>51</td><td>Revert Record/Request</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>207</td><td>Revert Transaction</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>37</td><td>Save a Copy as</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>96</td><td>Save a Copy as Add-on Package</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>3</td><td>Save a Copy as XML</td><td>✔</td><td>✔</td><td>-</td><td>✔</td><td>-</td><td>-</td></tr>
<tr><td>143</td><td>Save Records as Excel</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>225</td><td>Save Records as JSONL</td><td>✔</td><td>✔</td><td>-</td><td>✔</td><td>✔</td><td>-</td></tr>
<tr><td>144</td><td>Save Records as PDF</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>152</td><td>Save Records as Snapshot Link</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>✔</td></tr>
<tr><td>81</td><td>Scroll Window</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>50</td><td>Select All</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>108</td><td>Select Dictionaries</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>123</td><td>Select Window</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>64</td><td>Send DDE Execute</td><td>-</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>57</td><td>Send Event</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>63</td><td>Send Mail</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>217</td><td>Set AI Call Logging</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>195</td><td>Set Data File Position</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td></tr>
<tr><td>209</td><td>Set Dictionary</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>86</td><td>Set Error Capture</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>200</td><td>Set Error Logging</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>76</td><td>Set Field</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>147</td><td>Set Field By Name</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>168</td><td>Set Layout Object Animation</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>84</td><td>Set Multi-User</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>116</td><td>Set Next Serial Value</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>223</td><td>Set Revert Transaction on Error</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>130</td><td>Set Selection</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>208</td><td>Set Session Identifier</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>94</td><td>Set Use System Formats</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>141</td><td>Set Variable</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>146</td><td>Set Web Viewer</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>✔</td></tr>
<tr><td>124</td><td>Set Window Title</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>97</td><td>Set Zoom Level</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>23</td><td>Show All Records</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>87</td><td>Show Custom Dialog</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>✔</td></tr>
<tr><td>27</td><td>Show Omitted Only</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>166</td><td>Show/Hide Menubar</td><td>-</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>✔</td></tr>
<tr><td>92</td><td>Show/Hide Text Ruler</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>29</td><td>Show/Hide Toolbars</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>✔</td></tr>
<tr><td>39</td><td>Sort Records</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>154</td><td>Sort Records by Field</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>66</td><td>Speak</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>107</td><td>Spelling Options</td><td>✔</td><td>✔</td><td>-</td><td>-</td><td>-</td><td>-</td></tr>
<tr><td>211</td><td>Trigger Claris Connect Flow</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>182</td><td>Truncate Table</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>45</td><td>Undo/Redo</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>21</td><td>Unsort Records</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>30</td><td>View As</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td></tr>
<tr><td>192</td><td>Write to Data File</td><td>✔</td><td>✔</td><td>✔</td><td>✔</td><td>-</td><td>-</td></tr>
</table>
		]]></content>
		<author>
			<name>Chef</name>
		</author>
	</entry>
	
	
	
	<entry>
		<title>Last Chance for Early Bird Pricing at EngageU 2026</title>
		<link rel="alternate" type="text/html" href="https://www.mbsplugins.de/archive/2026-06-24/Last_Chance_for_Early_Bird_Pri/monkeybreadsoftware_blog_filemaker" />
		<updated>2026-06-24T12:14:00+02:00</updated>
		<published>2026-06-24T12:14:00+02:00</published>
		<id>tag:pivotpowered,2026:MonkeybreadSoftwareBlogFileMaker.6283</id>
		<link rel="related" type="text/html" href=""  />
		<summary type="text">The countdown is on! Early Bird registration for EngageU 2026 ends on June 30, giving FileMaker developers one final chance to secure their spot at a reduced rate.





Taking place September 30 – October 2, 2026, in Malmö, Sweden, EngageU brings together business leaders, developers, consultants, and technology enthusiasts from across Europe and around the world for three days of learning, networking, and inspiration.</summary>
        <content type="html" xml:lang="en" xml:base="https://www.mbsplugins.de/archive/2026-06-24/Last_Chance_for_Early_Bird_Pri/monkeybreadsoftware_blog_filemaker"><![CDATA[
                <p>
The countdown is on! Early Bird registration for <a rel="external" href="https://engageu.eu" title="">EngageU 2026</a> ends on June 30, giving FileMaker developers one final chance to secure their spot at a reduced rate.
</p>

<img src="http://www.mbsplugins.de/image/engage2026.jpg" width="780" style="border-radius:10pt;">

<p>
Taking place September 30 &ndash; October 2, 2026, in Malm&ouml;, Sweden, EngageU brings together business leaders, developers, consultants, and technology enthusiasts from across Europe and around the world for three days of learning, networking, and inspiration.</p><p>
This year's conference introduces a new Business Day, offering dedicated sessions for CTOs, decision-makers, and organizational leaders looking to maximize the value of the Claris platform. Alongside business-focused content, attendees can expect technical deep dives, real-world case studies, partner insights, and updates from the Claris ecosystem.<br  />
Early Bird full-conference tickets are available for &euro;945 until June 30. After that, the standard conference rate of &euro;1,095 applies.
</p>

<p>
Whether you're building solutions, leading teams, or shaping digital strategy, <a rel="external" href="https://engageu.eu" title="">EngageU 2026</a> is the place to connect with the European Claris community.
</p>

<p>
We at Monkeybread Software are happy to sponsor this event once again.
</p>

<p>
Register before June 30 to take advantage of Early Bird pricing and join us in Malm&ouml; this autumn.</p>
		]]></content>
		<author>
			<name>Chef</name>
		</author>
	</entry>
	
	
	
	<entry>
		<title>Xcode 27</title>
		<link rel="alternate" type="text/html" href="https://www.mbsplugins.de/archive/2026-06-24/Xcode_27/monkeybreadsoftware_blog_filemaker" />
		<updated>2026-06-24T07:17:00+02:00</updated>
		<published>2026-06-24T07:17:00+02:00</published>
		<id>tag:pivotpowered,2026:MonkeybreadSoftwareBlogFileMaker.6282</id>
		<link rel="related" type="text/html" href=""  />
		<summary type="text">We got a sneak peek on Xcode 27. It brings the SDK for Apple's new operation systems. We can still build our plugins with Xcode 26 and still add new features for the new operation system without using Xcode 27.

We will try the new Xcode version in the next months. But we probably won't move to the new OS before spring 2027. Somewhere in April the new macOS version 27.3 or 27.4 will ship and have most of the smaller bugs fixed.

Same for Xcode. To build the plugins with Xcode, we want to have a .1 or .2 bugfix update for Xcode itself.

Beside a lot of nice new things, Xcode 27 raises the minimum supported deployment target on macOS to macOS 11. The intel target gets deprecated. Xcode 27 comes as an Apple Silicon only application. It can still build Intel code, but by default only builds for Apple Silicon.

There is the expectation, that Xcode 28 may stop building for Intel CPU. Which may mean that we stop supporting Intel Macs at that time. If you still have one in production, consider moving off to newer hardware soon.

See Xcode 27 release notes.</summary>
        <content type="html" xml:lang="en" xml:base="https://www.mbsplugins.de/archive/2026-06-24/Xcode_27/monkeybreadsoftware_blog_filemaker"><![CDATA[
                <img src="http://www.mbsplugins.de/image/Xcode26Icon.png" width="400" align="right">We got a sneak peek on Xcode 27. It brings the SDK for Apple's new operation systems. We can still build our plugins with Xcode 26 and still add new features for the new operation system without using Xcode 27.<br />
<br />
We will try the new Xcode version in the next months. But we probably won't move to the new OS before spring 2027. Somewhere in April the new macOS version 27.3 or 27.4 will ship and have most of the smaller bugs fixed.<br />
<br />
Same for Xcode. To build the plugins with Xcode, we want to have a .1 or .2 bugfix update for Xcode itself.<br />
<br />
Beside a lot of nice new things, Xcode 27 raises the minimum supported deployment target on macOS to macOS 11. The intel target gets deprecated. Xcode 27 comes as an Apple Silicon only application. It can still build Intel code, but by default only builds for Apple Silicon.<br />
<br />
There is the expectation, that Xcode 28 may stop building for Intel CPU. Which may mean that we stop supporting Intel Macs at that time. If you still have one in production, consider moving off to newer hardware soon.<br />
<br />
See <a rel="external" href="https://developer.apple.com/documentation/xcode-release-notes/xcode-27-release-notes">Xcode 27 release notes</a>.
		]]></content>
		<author>
			<name>Chef</name>
		</author>
	</entry>
	
	
	
	<entry>
		<title>Secure Password Storage with Keychain Functions in MBS FileMaker Plugin 16.3</title>
		<link rel="alternate" type="text/html" href="https://www.mbsplugins.de/archive/2026-06-23/Secure_Password_Storage_with_K/monkeybreadsoftware_blog_filemaker" />
		<updated>2026-06-23T07:42:00+02:00</updated>
		<published>2026-06-23T07:42:00+02:00</published>
		<id>tag:pivotpowered,2026:MonkeybreadSoftwareBlogFileMaker.6280</id>
		<link rel="related" type="text/html" href=""  />
		<summary type="text">The upcoming version 16.3 of the MBS FileMaker Plugin introduces a powerful set of Keychain functions for storing and managing passwords on macOS and iOS.
These functions allow FileMaker solutions to securely store credentials in the system Keychain without relying on external storage or insecure plaintext fields.



On macOS and iOS, Keychain entries are automatically managed by the operating system, ensuring secure storage and controlled access for your apps.</summary>
        <content type="html" xml:lang="en" xml:base="https://www.mbsplugins.de/archive/2026-06-23/Secure_Password_Storage_with_K/monkeybreadsoftware_blog_filemaker"><![CDATA[
                <p>
The upcoming version 16.3 of the <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/">MBS FileMaker Plugin</a> introduces a powerful set of <a rel="external" href="https://www.mbsplugins.eu/component_Keychain.shtml" translate="no">Keychain</a> functions for storing and managing passwords on macOS and iOS.
These functions allow FileMaker solutions to securely store credentials in the system Keychain without relying on external storage or insecure plaintext fields.
</p>

<div class="note">
On macOS and iOS, Keychain entries are automatically managed by the operating system, ensuring secure storage and controlled access for your apps.
</div><style>
     h1, h2, h3 { color: #1a1a1a; }
    code, pre { background: #f4f4f4; padding: 2px 6px; border-radius: 4px; }
    pre { padding: 12px; overflow-x: auto; }
    .note { background: #fff7d6; padding: 10px; border-left: 4px solid #f0c36d; margin: 16px 0; }
  </style>

<h2>Overview of New Keychain Functions</h2>

<p>The plugin introduces five main functions for working with generic passwords:</p>

<ul>
  <li><a rel="external" href="https://www.mbsplugins.eu/KeychainAddGenericPassword.shtml">Keychain.AddGenericPassword</a></li>
  <li><a rel="external" href="https://www.mbsplugins.eu/KeychainDeleteGenericPassword.shtml">Keychain.DeleteGenericPassword</a></li>
  <li><a rel="external" href="https://www.mbsplugins.eu/KeychainFindGenericPassword.shtml">Keychain.FindGenericPassword</a></li>
  <li><a rel="external" href="https://www.mbsplugins.eu/KeychainListGenericPasswords.shtml">Keychain.ListGenericPasswords</a></li>
  <li><a rel="external" href="https://www.mbsplugins.eu/KeychainUpdateGenericPassword.shtml">Keychain.UpdateGenericPassword</a></li>
</ul>

<hr/>

<h2>1. Adding a Password</h2>

<p>
Use <a rel="external" href="https://www.mbsplugins.eu/KeychainAddGenericPassword.shtml">Keychain.AddGenericPassword</a> function to store a new credential in the system Keychain.
</p>

<pre>
MBS( "Keychain.AddGenericPassword"; "test"; "john"; "secret"; "just a test" )
</pre>

<p><strong>Parameters:</strong></p>
<ul>
  <li><strong>Service</strong>: Logical grouping (e.g. "test" or your solution name)</li>
  <li><strong>Account</strong>: Username or identifier</li>
  <li><strong>Password</strong>: Secret value</li>
  <li><strong>Description</strong> (optional): Human-readable label, shown in Keychain utility application.</li>
</ul>

<p>
Once stored, the Keychain entry is saved in the default system Keychain and can be accessed by the same app or authorized contexts.
</p>

<hr/>

<h2>2. Finding a Password</h2>

<p>
Retrieve a stored password using:
</p>

<pre>
MBS( "Keychain.FindGenericPassword"; "test"; "john" )
</pre>

<p>
If successful, the function returns the password as text. If something goes wrong, the function returns an error. Common error codes include:
</p>

<ul>
  <li><strong>-25300</strong>: Item not found</li>
  <li><strong>-128</strong>: User canceled authentication</li>
</ul>

<p>
You can optionally control UI prompts using the <code>UIAllowed</code> parameter.
</p>

<hr/>

<h2>3. Updating an Existing Password</h2>

<p>
To change an existing Keychain entry:
</p>

<pre>
MBS( "Keychain.UpdateGenericPassword"; "test"; "john"; "new secret" )
</pre>

<p>
This replaces the stored password while keeping the same service and account identifiers.
</p>

<hr/>

<h2>4. Listing Stored Passwords</h2>

<p>
You can query all stored entries or filter by service:
</p>

<pre>
MBS( "Keychain.ListGenericPasswords"; "test" )
</pre>

<p>
The result is returned as JSON metadata including accounts and services, useful for administration or debugging tools.
</p>

<hr/>

<h2>5. Deleting a Password</h2>

<p>
To remove a credential from the Keychain:
</p>

<pre>
MBS( "Keychain.DeleteGenericPassword"; "test"; "john" )
</pre>

<p>
This permanently deletes the stored entry from the system Keychain.
</p>

<hr/>

<h2>Why Use Keychain Integration?</h2>

<p>
Using the system Keychain on macOS and iOS provides several benefits:
</p>

<ul>
  <li>Encrypted storage managed by the operating system</li>
  <li>No need for custom encryption logic</li>
  <li>Secure access control per application</li>
  <li>Seamless integration with Apple security services</li>
</ul>

<p>
For developers building solutions with FileMaker, this is a major step forward in simplifying secure credential management. You may use these functions on macOS and in your iOS application built with Xcode and the FileMaker iOS SDK.
</p>

<hr/>

<h2>Summary</h2>

<p>
The new <a rel="external" href="https://www.mbsplugins.eu/component_Keychain.shtml" translate="no">Keychain</a> functions in version 16.3 make it easy to securely store, retrieve, update, list, and delete passwords directly from FileMaker scripts.
This brings native macOS and iOS security capabilities into your database solutions with minimal effort.
</p>

<p>
As a result, developers can build more secure applications without relying on external password storage mechanisms.</p>
		]]></content>
		<author>
			<name>Chef</name>
		</author>
	</entry>
	
	
	
	<entry>
		<title>MBS FileMaker Plugin, version 16.3pr3</title>
		<link rel="alternate" type="text/html" href="https://www.mbsplugins.de/archive/2026-06-22/MBS_FileMaker_Plugin_version_1/monkeybreadsoftware_blog_filemaker" />
		<updated>2026-06-22T07:58:00+02:00</updated>
		<published>2026-06-22T07:58:00+02:00</published>
		<id>tag:pivotpowered,2026:MonkeybreadSoftwareBlogFileMaker.6278</id>
		<link rel="related" type="text/html" href=""  />
		<summary type="text">New in this prerelease of version 16.3 of the MBS FileMaker Plugin:


Improved Command-Option-T shortcut for the calculation editor to insert the current selected table occurrence in the popup menu into the text and cut away the field name.
Added a display of the time needed for the execution of a calculation. Shows time needed in milliseconds or microseconds.
Improved the DPI awareness on Windows for various window functions.
Fixed an issue with Window.PositionNextDialog not resizing the window properly.
Updated FM.InsertRecord to delay getting the field types until we have a field type mismatch.
When loading schema with Audit functions, we log in trace log how long the SQL requests took.
Added Window.Screen function.
Improved WebView.Close to close the WebView window.
Improved WebView window to be closable with window.close in JavaScript..
Updated the script search. Added compact view, details toggles, exclusion, RegEx help and more.
Added List.ColumnMatchesPostfix, List.ColumnMatchesPrefix and List.ColumnMatchesSubString functions.
Updated DynaPDF to version 5.0.3.12.
Added ConvGrayToSauvola to the compression filter flags for DynaPDF.Optimize function.
Added DeleteWatermarks, DeleteWatermarkAnnots and UseSauvolaFilter for DynaPDF.Optimize function.



New functions in documentation

Download Links: Download Mac dmg or Download Windows/Linux zip


Downloads at monkeybreadsoftware.com/filemaker/files/Prerelease/: 


You can subscribe to our FileMaker mailing list to get notified for new pre-release and release versions.</summary>
        <content type="html" xml:lang="en" xml:base="https://www.mbsplugins.de/archive/2026-06-22/MBS_FileMaker_Plugin_version_1/monkeybreadsoftware_blog_filemaker"><![CDATA[
                <img src="http://www.mbsplugins.de/image/fmplugin19.png" width="200" align="right">New in this prerelease of version 16.3 of the <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/">MBS FileMaker Plugin</a>:
<ul>

<li>Improved Command-Option-T shortcut for the calculation editor to insert the current selected table occurrence in the popup menu into the text and cut away the field name.</li>
<li>Added a display of the time needed for the execution of a calculation. Shows time needed in milliseconds or microseconds.</li>
<li>Improved the DPI awareness on Windows for various <a rel="external" href="https://www.mbsplugins.eu/component_Window.shtml" translate="no">window</a> functions.</li>
<li>Fixed an issue with <a rel="external" href="https://www.mbsplugins.eu/WindowPositionNextDialog.shtml">Window.PositionNextDialog</a> not resizing the window properly.</li>
<li>Updated <a rel="external" href="https://www.mbsplugins.eu/FMInsertRecord.shtml">FM.InsertRecord</a> to delay getting the field types until we have a field type mismatch.</li>
<li>When loading schema with <a rel="external" href="https://www.mbsplugins.eu/component_Audit.shtml" translate="no">Audit</a> functions, we log in trace log how long the SQL requests took.</li>
<li>Added <a rel="external" href="https://www.mbsplugins.eu/WindowScreen.shtml">Window.Screen</a> function.</li>
<li>Improved <a rel="external" href="https://www.mbsplugins.eu/WebViewClose.shtml">WebView.Close</a> to close the WebView window.</li>
<li>Improved WebView window to be closable with window.close in JavaScript..</li>
<li>Updated the script search. Added compact view, details toggles, exclusion, RegEx help and more.</li>
<li>Added <a rel="external" href="https://www.mbsplugins.eu/ListColumnMatchesPostfix.shtml">List.ColumnMatchesPostfix</a>, <a rel="external" href="https://www.mbsplugins.eu/ListColumnMatchesPrefix.shtml">List.ColumnMatchesPrefix</a> and <a rel="external" href="https://www.mbsplugins.eu/ListColumnMatchesSubString.shtml">List.ColumnMatchesSubString</a> functions.</li>
<li>Updated DynaPDF to version 5.0.3.12.</li>
<li>Added ConvGrayToSauvola to the compression filter flags for <a rel="external" href="https://www.mbsplugins.eu/DynaPDFOptimize.shtml">DynaPDF.Optimize</a> function.</li>
<li>Added DeleteWatermarks, DeleteWatermarkAnnots and UseSauvolaFilter for <a rel="external" href="https://www.mbsplugins.eu/DynaPDFOptimize.shtml">DynaPDF.Optimize</a> function.</li>

</ul>

<p><a rel="external" href="https://www.mbsplugins.eu/newinversion163.shtml">New functions in documentation</a></p>

<p>Download Links: <a rel="external" href="https://monkeybreadsoftware.com/cgi-bin/prerelease.php?type=filemaker&format=dmg&cdn=1" download>Download Mac dmg</a> or <a rel="external" href="https://monkeybreadsoftware.com/cgi-bin/prerelease.php?type=filemaker&format=zip&cdn=1" download>Download Windows/Linux zip</a></p>

<br  clear="all" />
<p>Downloads at <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/files/Prerelease/">monkeybreadsoftware.com/filemaker/files/Prerelease/</a>: </p>
<br  clear="all" />

<p>You can subscribe to our <a rel="external" href="https://monkeybreadsoftware.com/mbsfmplugin" title="">FileMaker mailing list</a> to get notified for new pre-release and release versions.</p>
		]]></content>
		<author>
			<name>Chef</name>
		</author>
	</entry>
	
	
	
	<entry>
		<title>MBS at Full Access 2026</title>
		<link rel="alternate" type="text/html" href="https://www.mbsplugins.de/archive/2026-06-20/MBS_at_Full_Access_2026/monkeybreadsoftware_blog_filemaker" />
		<updated>2026-06-20T11:09:00+02:00</updated>
		<published>2026-06-20T11:09:00+02:00</published>
		<id>tag:pivotpowered,2026:MonkeybreadSoftwareBlogFileMaker.6277</id>
		<link rel="related" type="text/html" href=""  />
		<summary type="text">We are happy to join the biggest US conference for FileMaker developers in 2026: 




[Full Access] 2026


This year’s premier U.S. FileMaker conference.


August 6th – 10th 2026


The Jesuit Retreat Center, Los Altos, California.

Register</summary>
        <content type="html" xml:lang="en" xml:base="https://www.mbsplugins.de/archive/2026-06-20/MBS_at_Full_Access_2026/monkeybreadsoftware_blog_filemaker"><![CDATA[
                <p>
We are happy to join the biggest US conference for FileMaker developers in 2026: 
</p>

<blockquote>
<H2>
<a rel="external" href="https://fullaccess.us/">[Full Access] 2026</a>
</H2>

<p>This year&rsquo;s premier U.S. FileMaker conference.</p>

<p>
August 6th &ndash; 10th 2026
</p>

<p>The Jesuit Retreat Center, Los Altos, California.</p>

<p><a rel="external" href="https://fullaccess.us/register/">Register</a></p>
</blockquote>

<img src="http://www.mbsplugins.de/image/JRC-from-Drone-Camera.jpg" width="800"><p>This conference is an unconference. Everyone is welcome to submit sessions and the schedule changes at the conference. Please consider contributing something like showing some tips and tricks you have.</p>

<p>Monkeybread Software sponsors the event and you will find there a booth with Christian Schmitz to ask all questions about the MBS Plugin.</p>

<p>We may have a MBS News session to tell you what is new. Then we may have a MBS Enhancements session to tell you about our Script Workspace enhancements. We could also have special topic sessions for XML, SQL, PDF or other topics. We could also do a live workshop to build an iOS SDK based app.</p>

<p>See you there!</p>

<p>More conferences are available for FileMaker: <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/events/">Events</a>. See you in Los Altos, Christchurch and Salzburg!</p>
		]]></content>
		<author>
			<name>Chef</name>
		</author>
	</entry>
	
	
	
	<entry>
		<title>Improve FileMaker Script &amp; Calculation Readability with Custom Fonts Using MBS FileMaker Plugin</title>
		<link rel="alternate" type="text/html" href="https://www.mbsplugins.de/archive/2026-06-19/Improve_FileMaker_Script__Calc/monkeybreadsoftware_blog_filemaker" />
		<updated>2026-06-19T10:12:00+02:00</updated>
		<published>2026-06-19T10:12:00+02:00</published>
		<id>tag:pivotpowered,2026:MonkeybreadSoftwareBlogFileMaker.6276</id>
		<link rel="related" type="text/html" href=""  />
		<summary type="text">One of the small but surprisingly impactful usability improvements for FileMaker developers is choosing a better font for scripts and calculations. While FileMaker's default editor font works reasonably well, it can sometimes make it difficult to distinguish between similar-looking characters.



Have you ever spent several minutes hunting down a bug only to discover that a lowercase l was used instead of the number 1? Or perhaps a capital O was mistaken for the number 0? These subtle visual ambiguities can lead to frustrating debugging sessions and wasted development time.</summary>
        <content type="html" xml:lang="en" xml:base="https://www.mbsplugins.de/archive/2026-06-19/Improve_FileMaker_Script__Calc/monkeybreadsoftware_blog_filemaker"><![CDATA[
                <p>
One of the small but surprisingly impactful usability improvements for FileMaker developers is choosing a better font for scripts and calculations. While FileMaker's default editor font works reasonably well, it can sometimes make it difficult to distinguish between similar-looking characters.
</p>

<p>
Have you ever spent several minutes hunting down a bug only to discover that a lowercase <strong>l</strong> was used instead of the number <strong>1</strong>? Or perhaps a capital <strong>O</strong> was mistaken for the number <strong>0</strong>? These subtle visual ambiguities can lead to frustrating debugging sessions and wasted development time.
</p>

<img src="http://www.mbsplugins.de/image/FontChoice.png" width="992"><h2>The Problem with Similar Characters</h2>

<p>
Many programming and scripting fonts are specifically designed to make potentially confusing characters visually distinct. Common examples include:
</p>

<ul>
    <li>Lowercase <strong>l</strong> versus number <strong>1</strong></li>
    <li>Uppercase <strong>O</strong> versus number <strong>0</strong></li>
    <li>Uppercase <strong>I</strong> versus lowercase <strong>l</strong></li>
    <li>Quotation marks versus apostrophes</li>
</ul>

<p>
In large FileMaker solutions containing hundreds or thousands of scripts and calculations, these distinctions can significantly reduce errors and improve readability.
</p>

<h2>Using MBS FileMaker Plugin to Change Editor Fonts</h2>

<img src="http://www.mbsplugins.de/image/FontPreferences.png" width="50%" align="right">

<p>
The <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/">MBS FileMaker Plugin</a> includes functionality that allows developers to customize the fonts used within FileMaker's script and calculation editors.
</p>

<p>
Instead of relying on the default font, you can select a monospaced programming font that clearly differentiates commonly confused characters. Popular choices include:
</p>

<ul>
    <li>Consolas</li>
    <li>Cascadia Code</li>
    <li>JetBrains Mono</li>
    <li>Fira Code</li>
    <li>Source Code Pro</li>
    <li>Menlo (macOS)</li>
</ul>

<p>
Many of these fonts were specifically designed for software developers and provide excellent character distinction.
</p>

<h2>Example Benefits</h2>

<p>
Consider the following variable names:
</p>

<pre>
$lOrderID vs $1OrderID

$OCount   vs $0Count
</pre>

<p>
With some fonts, these names can appear nearly identical. With a developer-oriented font, the differences become immediately obvious, helping prevent mistakes during development and code reviews.
</p>

<h2>Configure the Font with MBS FileMaker Plugin</h2>

<p>
The <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/">MBS FileMaker Plugin</a> provides functions to customize the appearance of various FileMaker development dialogs, including script and calculation editors. Once you pick a new font in the preferences dialog, the selected font can make everyday development work more comfortable and reduce the chance of visual misinterpretation.
</p>

<p>
Many developers report that after switching to a dedicated coding font, they find scripts easier to read, calculations easier to maintain, and debugging faster overall.
</p>

<h2>A Small Change with Big Impact</h2>

<p>
Choosing a better editor font may seem like a minor adjustment, but development productivity is often improved through many small optimizations. Clearer character rendering reduces cognitive load, makes code reviews more effective, and helps avoid subtle mistakes before they become bugs.
</p>

<p>
If you use the <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/">MBS FileMaker Plugin</a> during FileMaker development, consider experimenting with a font that clearly distinguishes similar characters. Your future self—and anyone maintaining your solution—will appreciate the improved readability.
</p>

<h2>Conclusion</h2>

<p>
The <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/">MBS FileMaker Plugin</a> gives FileMaker developers additional control over their development environment. By selecting a font that clearly differentiates characters such as <strong>0</strong> and <strong>O</strong> or <strong>1</strong> and <strong>l</strong>, you can make scripts and calculations easier to read and reduce the likelihood of introducing errors.
</p>

<p>
Sometimes the simplest improvements deliver the greatest long-term benefits.</p>
		]]></content>
		<author>
			<name>Chef</name>
		</author>
	</entry>
	
	
	
	<entry>
		<title>MongoDB GridFS in the MBS FileMaker Plugin</title>
		<link rel="alternate" type="text/html" href="https://www.mbsplugins.de/archive/2026-06-17/MongoDB_GridFS_in_the_MBS_File/monkeybreadsoftware_blog_filemaker" />
		<updated>2026-06-17T09:18:00+02:00</updated>
		<published>2026-06-17T09:18:00+02:00</published>
		<id>tag:pivotpowered,2026:MonkeybreadSoftwareBlogFileMaker.6274</id>
		<link rel="related" type="text/html" href=""  />
		<summary type="text">Complete developer guide to storing, querying, and managing files in MongoDB GridFS

Introduction

GridFS is MongoDB’s mechanism for storing large files by splitting them into chunks and storing them across two collections.
The MBS FileMaker Plugin exposes a complete API for working with GridFS directly from FileMaker scripts.



This allows developers to treat MongoDB as a scalable file storage backend for images, documents, and binary data.</summary>
        <content type="html" xml:lang="en" xml:base="https://www.mbsplugins.de/archive/2026-06-17/MongoDB_GridFS_in_the_MBS_File/monkeybreadsoftware_blog_filemaker"><![CDATA[
                <p>Complete developer guide to storing, querying, and managing files in MongoDB GridFS</p>
<section>
<h2>Introduction</h2>
<p>
GridFS is MongoDB’s mechanism for storing large files by splitting them into chunks and storing them across two collections.
The <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/">MBS FileMaker Plugin</a> exposes a complete API for working with GridFS directly from FileMaker scripts.
</p>

<p>
This allows developers to treat MongoDB as a scalable file storage backend for images, documents, and binary data.
</p>
</section><style>


    pre {
        background: #f3f4f6;
        padding: 1rem;
        border-radius: 6px;
        overflow-x: auto;
    }

    .note {
        background: #fff7ed;
        border-left: 4px solid #f59e0b;
        padding: 0.75rem 1rem;
        margin: 1rem 0;
    }
</style>
<!-- OPEN -->
<section>
<h2>1. Opening GridFS</h2>

<pre><code>MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSOpen.shtml">MongoDB.GridFS.Open</a>"; MongoDBRef; db; prefix )</code></pre>

<p>
This initializes a GridFS bucket inside a MongoDB database. The prefix defines the internal collections used for file and chunk storage.
You must open GridFS before performing any file operations.
</p>

<pre><code># FileMaker Script Example

# start a new session
Set Variable [ $Mongo ; Value: MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBNew.shtml">MongoDB.New</a>" ) ] 
# where is the server?
Set Variable [ $r ; Value: MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBSetURI.shtml">MongoDB.SetURI</a>"; $Mongo; "mongodb://localhost/" ) ] 
# connect
Set Variable [ $r ; Value: MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBConnect.shtml">MongoDB.Connect</a>"; $Mongo) ] 

# open GridFS
Set Variable [ $r ;
    Value: MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSOpen.shtml">MongoDB.GridFS.Open</a>"; $Mongo; "files" )
]

If [ MBS("IsError") ]
    Show Custom Dialog [ "Error opening GridFS" ; $r ]
    Exit Script
End If
</code></pre>
</section>

<!-- WRITE -->
<section>
<h2>2. Writing Files</h2>

<pre><code>MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSWrite.shtml">MongoDB.GridFS.Write</a>"; MongoDBRef; Container ; Options )</code></pre>

<p>
Stores a FileMaker container as a GridFS file. This is ideal for images, PDFs, and any binary data.
You can optionally define filename, content type, and metadata for later filtering.
</p>

<pre><code># FileMaker Script Example

Set Variable [ $file ; Value: Table::Image ]

Set Variable [ $r ;
    Value: MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSWrite.shtml">MongoDB.GridFS.Write</a>";
        $Mongo;
        $file;
        "{\"filename\":\"photo.jpg\",\"contentType\":\"image/jpeg\"}"
    )
]

If [ MBS("IsError") ]
    Show Custom Dialog [ "Upload failed" ; $r ]
End If
</code></pre>
</section>

<!-- READ -->
<section>
<h2>3. Reading Files</h2>

<pre><code>MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSRead.shtml">MongoDB.GridFS.Read</a>"; MongoDBRef; ID )</code></pre>

<p>
Reads a file from GridFS using its unique ID and returns it as a FileMaker container value.
This is the primary way to retrieve stored binary data.
</p>

<pre><code># FileMaker Script Example

Set Variable [ $fileID ; Value: "6a1836306f6e4b6f9e03f46d" ]

Set Field [ Table::Image ;
    MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSRead.shtml">MongoDB.GridFS.Read</a>"; $Mongo; $fileID )
]
</code></pre>
</section>

<!-- FIND -->
<section>
<h2>4. Finding Files</h2>

<h3>Find One by Filename</h3>
<pre><code>MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSFindOneByFileName.shtml">MongoDB.GridFS.FindOneByFileName</a>"; MongoDBRef; Filename )</code></pre>

<p>
Finds the first file matching a given filename. Useful for simple lookup scenarios where filenames are unique.
</p>

<h3>Find One (Flexible Query)</h3>
<pre><code>MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSFindOne.shtml">MongoDB.GridFS.FindOne</a>"; MongoDBRef; filter ; opts )</code></pre>

<p>
Allows advanced filtering using JSON queries such as file size, metadata, or custom fields.
This is the most flexible search method in GridFS.
</p>

<pre><code># FileMaker Script Example

Set Variable [ $r ;
    Value: MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSFindOne.shtml">MongoDB.GridFS.FindOne</a>";
        $Mongo;
        "{\"filename\":\"photo.jpg\"}";
        "{}"
    )
]
</code></pre>

<h3>Find Many Files</h3>
<pre><code>MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSFind.shtml">MongoDB.GridFS.Find</a>"; MongoDBRef; filter )</code></pre>

<p>
Returns all files matching a filter as a JSON array. This is useful for file browsers or admin tools.
</p>

<pre><code># FileMaker Script Example

Set Variable [ $list ;
    Value: MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSFind.shtml">MongoDB.GridFS.Find</a>"; $Mongo; "{}" )
]

Show Custom Dialog [ "Files" ; $list ]
</code></pre>
</section>

<!-- REMOVE -->
<section>
<h2>5. Removing Files</h2>

<h3>Remove by ID</h3>
<pre><code>MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSRemove.shtml">MongoDB.GridFS.Remove</a>"; MongoDBRef; ID )</code></pre>

<h3>Remove by Filename</h3>
<pre><code>MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSRemoveByFileName.shtml">MongoDB.GridFS.RemoveByFileName</a>"; MongoDBRef; Filename )</code></pre>

<p>
These functions delete both the file metadata and its chunks. Removing by filename will affect all matching files.
</p>

<pre><code># FileMaker Script Example

Set Variable [ $r ;
    Value: MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSRemove.shtml">MongoDB.GridFS.Remove</a>"; $Mongo; $fileID )
]
</code></pre>
</section>

<!-- INSPECT -->
<section>
<h2>6. Inspecting GridFS Internals</h2>

<p><a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSGetFiles.shtml">MongoDB.GridFS.GetFiles</a></p>
<p>
Returns the metadata collection for all stored files. This allows you to query GridFS using standard MongoDB collection functions.
</p>

<p><a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSGetChunks.shtml">MongoDB.GridFS.GetChunks</a></p>
<p>
Returns the internal chunk storage collection. This is useful for debugging or advanced storage inspection.
</p>

<pre><code># FileMaker Script Example

Set Variable [ $r ; Value: MBS("<a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSGetFiles.shtml">MongoDB.GridFS.GetFiles</a>"; $Mongo) ]
Set Variable [ $files ; Value: MBS("<a rel="external" href="https://www.mbsplugins.eu/MongoDBFind.shtml">MongoDB.Find</a>"; $Mongo; "{}") ]
</code></pre>

<div class="note">
These functions are primarily for advanced use cases. Most applications only interact with the higher-level GridFS API.
</div>
</section>

<!-- DROP -->
<section>
<h2>7. Dropping GridFS</h2>

<pre><code>MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSDrop.shtml">MongoDB.GridFS.Drop</a>"; MongoDBRef )</code></pre>

<p>
Drops the entire GridFS bucket, including all files and chunks. This is a destructive operation used for resets or test cleanup.
</p>

<pre><code># FileMaker Script Example

Set Variable [ $r ;
    Value: MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSDrop.shtml">MongoDB.GridFS.Drop</a>"; $Mongo )
]
</code></pre>
</section>

<!-- CLOSE -->
<section>
<h2>8. Closing GridFS</h2>

<pre><code>MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSClose.shtml">MongoDB.GridFS.Close</a>"; MongoDBRef )</code></pre>

<p>
Closes the GridFS context. In most cases this is not required because <code><a rel="external" href="https://www.mbsplugins.eu/MongoDBRelease.shtml">MongoDB.Release</a></code> automatically cleans up resources.
</p>

<pre><code># FileMaker Script Example

Set Variable [ $r ;
    Value: MBS( "<a rel="external" href="https://www.mbsplugins.eu/MongoDBGridFSClose.shtml">MongoDB.GridFS.Close</a>"; $Mongo )
]
</code></pre>
</section>

<!-- CONCLUSION -->
<section>
<h2>Conclusion</h2>

<p>
The <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/">MBS FileMaker Plugin</a> provides a complete and production-ready interface to MongoDB GridFS.
It enables FileMaker solutions to handle large files efficiently without relying on external file systems. And you benefit from automatically synchronization between various MongoDB servers.
</p>

<p>
With full support for querying, metadata filtering, and chunk-based storage, GridFS becomes a powerful backend
for document management, media libraries, and archival systems.
</p>

</section>
		]]></content>
		<author>
			<name>Chef</name>
		</author>
	</entry>
	
	
	
	<entry>
		<title>MBS FileMaker Plugin, version 16.3pr2</title>
		<link rel="alternate" type="text/html" href="https://www.mbsplugins.de/archive/2026-06-15/MBS_FileMaker_Plugin_version_1/monkeybreadsoftware_blog_filemaker" />
		<updated>2026-06-15T08:37:00+02:00</updated>
		<published>2026-06-15T08:37:00+02:00</published>
		<id>tag:pivotpowered,2026:MonkeybreadSoftwareBlogFileMaker.6271</id>
		<link rel="related" type="text/html" href=""  />
		<summary type="text">New in this prerelease of version 16.3 of the MBS FileMaker Plugin:


Added GuidedAccessState, RevertTransactionOnErrorState and WindowUUID for the get() functions help links.
Added SerialPort.Setup function.
Added SystemInfo.isGoldenGate function.
Enhanced the Command-Option-T shortcut for calculation editor: If you have no selection, we insert current table occurence name. If you selected text, we select the matching table occurence in the popup menu.
Fixed a bug in Math.FormatNumber function, introduced in pr1.
Fixed a bug in ProcessActivity.beginActivity function not passing display sleep correctly.
Improved PDFKit.Combine to copy metadata values from first document to the new document.
Improved performance of Hash.RandomHexString function.
Updated jsoncons to version 1.8.1.
Updated mongo-c-driver to version 2.3.1.
Updated openssl to version 3.5.7.
Warning: The minimum macOS version is currently 10.15, but will change to 11.0 or 12.0 end of 2026.



New functions in documentation

Download Links: Download Mac dmg or Download Windows/Linux zip


Downloads at monkeybreadsoftware.com/filemaker/files/Prerelease/: 


You can subscribe to our FileMaker mailing list to get notified for new pre-release and release versions.</summary>
        <content type="html" xml:lang="en" xml:base="https://www.mbsplugins.de/archive/2026-06-15/MBS_FileMaker_Plugin_version_1/monkeybreadsoftware_blog_filemaker"><![CDATA[
                <img src="http://www.mbsplugins.de/image/fmplugin19.png" width="200" align="right">New in this prerelease of version 16.3 of the <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/">MBS FileMaker Plugin</a>:
<ul>

<li>Added GuidedAccessState, RevertTransactionOnErrorState and WindowUUID for the get() functions help links.</li>
<li>Added <a rel="external" href="https://www.mbsplugins.eu/SerialPortSetup.shtml">SerialPort.Setup</a> function.</li>
<li>Added <a rel="external" href="https://www.mbsplugins.eu/SystemInfoisGoldenGate.shtml">SystemInfo.isGoldenGate</a> function.</li>
<li>Enhanced the Command-Option-T shortcut for calculation editor: If you have no selection, we insert current table occurence name. If you selected text, we select the matching table occurence in the popup menu.</li>
<li>Fixed a bug in <a rel="external" href="https://www.mbsplugins.eu/MathFormatNumber.shtml">Math.FormatNumber</a> function, introduced in pr1.</li>
<li>Fixed a bug in <a rel="external" href="https://www.mbsplugins.eu/ProcessActivitybeginActivity.shtml">ProcessActivity.beginActivity</a> function not passing display sleep correctly.</li>
<li>Improved <a rel="external" href="https://www.mbsplugins.eu/PDFKitCombine.shtml">PDFKit.Combine</a> to copy metadata values from first document to the new document.</li>
<li>Improved performance of <a rel="external" href="https://www.mbsplugins.eu/HashRandomHexString.shtml">Hash.RandomHexString</a> function.</li>
<li>Updated jsoncons to version 1.8.1.</li>
<li>Updated mongo-c-driver to version 2.3.1.</li>
<li>Updated openssl to version 3.5.7.</li>
<li>Warning: The minimum macOS version is currently 10.15, but will change to 11.0 or 12.0 end of 2026.</li>

</ul>

<p><a rel="external" href="https://www.mbsplugins.eu/newinversion163.shtml">New functions in documentation</a></p>

<p>Download Links: <a rel="external" href="https://monkeybreadsoftware.com/cgi-bin/prerelease.php?type=filemaker&format=dmg&cdn=1" download>Download Mac dmg</a> or <a rel="external" href="https://monkeybreadsoftware.com/cgi-bin/prerelease.php?type=filemaker&format=zip&cdn=1" download>Download Windows/Linux zip</a></p>

<br  clear="all" />
<p>Downloads at <a rel="external" href="https://www.monkeybreadsoftware.com/filemaker/files/Prerelease/">monkeybreadsoftware.com/filemaker/files/Prerelease/</a>: </p>
<br  clear="all" />

<p>You can subscribe to our <a rel="external" href="https://monkeybreadsoftware.com/mbsfmplugin" title="">FileMaker mailing list</a> to get notified for new pre-release and release versions.</p>
		]]></content>
		<author>
			<name>Chef</name>
		</author>
	</entry>
	
	
	
</feed>
