Track and Recall Lots Instantly When Needed

In industries like manufacturing, pharmaceuticals, and food production, lot tracking is critical for quality control, regulatory compliance, and customer safety. Whether due to a recall, audit, or quality investigation, businesses must be able to instantly locate specific lots and trace their history. Without an efficient system, searching for lot information can be time-consuming, leading to delays, compliance risks, and potential product waste.

Implementing a lot tracking system that provides instant access to detailed records ensures faster recalls, improved traceability, and greater operational efficiency. Businesses need a solution that streamlines these processes—one that eliminates paperwork bottlenecks and centralizes critical data for quick retrieval.

The Business Case for Lot Tracking and Fast Recalls

Lot tracking is essential for any business handling batch-produced or serialized products. Here’s why an efficient lot tracking system is crucial:

1. Ensuring Compliance with Industry Regulations

Regulatory agencies such as the FDA, USDA, and ISO require manufacturers to maintain traceable lot records. Failing to track and recall products accurately can result in fines, legal issues, and damage to a company’s reputation.

2. Minimizing Recall Costs and Risks

Product recalls are costly, but an effective lot tracking system reduces recall scope by identifying only the affected lots. This prevents unnecessary product waste and minimizes disruptions.

3. Improving Quality Control and Traceability

When defects or contamination issues arise, businesses need to pinpoint affected lots immediately. Tracking raw materials, production dates, and distribution channels enables precise quality control and fast corrective action.

4. Enhancing Customer and Supplier Confidence

Reliable lot tracking reassures customers and suppliers that a company follows strict quality standards. Being able to respond quickly to inquiries about product origins, components, and safety improves business relationships.

5. Reducing Manual Errors and Data Loss

Manually tracking lot numbers using spreadsheets or paper records increases the risk of misplaced or inaccurate data. A digital, automated system eliminates these inefficiencies and ensures accurate records.

How FileMaker Streamlines Lot Tracking and Recall Processes

FileMaker is a powerful, low-code database platform that enables businesses to track, search, and recall lot information instantly. Unlike rigid, off-the-shelf solutions, FileMaker provides customizable lot tracking systems tailored to unique business needs.

Here’s how FileMaker enhances lot traceability, recall efficiency, and compliance:

1. Centralized Lot Tracking Database

FileMaker consolidates all lot-related data into a single, searchable platform, eliminating the need for scattered spreadsheets or paperwork.

  • Complete Lot History: Maintain detailed records of each lot, including production date, ingredients/components used, batch numbers, and storage locations.

  • Real-Time Data Updates: Automatically update lot information as materials are received, processed, or shipped.

  • Customizable Fields: Track additional data such as expiration dates, supplier details, or testing results based on industry needs.

2. Instant Lot Search and Retrieval

With FileMaker’s fast, structured search capabilities, businesses can locate specific lots in seconds—no more sifting through stacks of records or outdated spreadsheets.

  • Advanced Search Filters: Search by lot number, product name, supplier, date range, or storage location.

  • Barcode and QR Code Scanning: Scan lot codes directly into the system for immediate lookup.

  • Audit-Ready Reporting: Generate compliance reports instantly to meet regulatory requirements.

3. Automated Recall Workflows

FileMaker streamlines recall management by automating workflows and notifications:

  • Recall Alerts: Trigger automated alerts to relevant teams when a recall is issued.

  • Notification Logs: Track all recall-related communications and actions taken.

  • Batch Isolation: Identify and isolate only the affected lots, reducing unnecessary product waste.

4. Integration with Existing Systems

FileMaker integrates seamlessly with ERP, inventory management, and production tracking systems, ensuring that lot data is always up to date.

  • Sync with Supply Chain Systems: Ensure that all stakeholders have access to accurate lot information.

  • Connect with Manufacturing Equipment: Automatically log production data from machines and testing stations.

  • Mobile and Cloud Access: Enable teams to retrieve lot information remotely on tablets or mobile devices.

5. Enhanced Compliance and Traceability

FileMaker makes regulatory compliance easier by automating documentation and ensuring data integrity.

  • Automated Record-Keeping: Maintain complete, timestamped audit logs for compliance inspections.

  • Secure User Access Controls: Restrict access to sensitive data based on user roles.

  • Traceability Reports: Generate batch history, supplier records, and distribution reports for audits.

For manufacturers, food processors, and pharmaceutical companies, the ability to track and recall lots instantly is essential for compliance, quality control, and customer safety. Manual processes and outdated systems create unnecessary risks and inefficiencies, but FileMaker offers a powerful, streamlined solution for managing lot traceability.

By leveraging FileMaker’s custom database capabilities, businesses can enhance efficiency, improve compliance, and respond to recalls in record time.

 

At Kyo Logic, we specialize in developing custom FileMaker solutions tailored to your lot tracking and recall needs. Contact us today to learn how we can help you build a fast, reliable, and compliant lot tracking system for your business.

Provide Up-to-the-Moment Delivery Data for Seamless Operations

In today’s fast-paced supply chain environment, real-time delivery tracking is no longer a luxury—it’s a necessity. Timely, accurate updates keep operations running smoothly and ensure that all stakeholders, from internal teams to clients, are informed every step of the way. Whether you’re a manufacturer coordinating deliveries or a 3PL provider managing complex shipping networks, having up-to-the-moment delivery data reduces uncertainty and improves customer satisfaction. Claris FileMaker offers a customizable platform that centralizes delivery data, providing your team and clients with real-time visibility into shipment progress.

Why Real-Time Delivery Tracking Matters

Supply chain disruptions, delays, and miscommunication can easily ripple across operations, affecting production schedules and customer commitments. With real-time delivery data, businesses can proactively address potential delays, reroute shipments if necessary, and keep all stakeholders informed. This transparency not only streamlines operations but also strengthens relationships with customers who value accurate, up-to-the-moment updates. For 3PL providers, real-time tracking becomes even more essential, as they need to provide both shippers and receivers with clear, reliable delivery information.

Benefits of Centralized Delivery Data

When delivery data is centralized within a single platform, businesses gain full visibility into their logistics operations. Benefits include:

  • Faster response times when issues arise

  • Improved internal coordination between sales, production, and shipping teams

  • Enhanced customer service through accurate delivery updates

  • Better reporting and post-delivery analysis

For companies working with 3PL providers, integrating external data feeds into a centralized system ensures all critical delivery information is easily accessible and actionable.

How Claris FileMaker Powers Real-Time Delivery Tracking

Claris FileMaker excels at bringing delivery tracking data into one seamless, customizable platform. Whether pulling data from GPS tracking systems, carrier APIs, or internal logistics tools, FileMaker integrates all delivery data into an easy-to-use dashboard. Teams can monitor shipment progress in real time, trigger automated alerts when delays occur, and generate customized delivery reports for internal and external stakeholders. By offering full flexibility, Claris FileMaker ensures your delivery tracking system meets your exact business needs.

Conclusion

 

Providing up-to-the-moment delivery data is essential for maintaining seamless operations and keeping all stakeholders informed. Claris FileMaker offers the tools to centralize delivery data, provide real-time visibility, and enhance both internal efficiency and customer satisfaction. Interested to learn more about how Claris FileMaker can solve for real-time delivery tracking? Reach out to Kyo Logic here.

 

Meet Regulatory Tracking Requirements Efficiently with Claris FileMaker

Regulatory compliance is a critical aspect of operations for businesses across industries, from custom manufacturing to logistics and healthcare. Tracking requirements often demand meticulous record-keeping, timely reporting, and adherence to evolving regulations. Managing these obligations manually can be time-consuming, error-prone, and administratively burdensome. Claris FileMaker provides a powerful, customizable solution to streamline compliance processes, provide live test report results, and maintain secure, auditable records—ensuring businesses meet regulatory demands with efficiency and accuracy.

The Complexity of Regulatory Tracking

Industries dealing with safety standards, environmental regulations, or specifications compliance must maintain detailed records to demonstrate adherence to laws and industry guidelines. Whether tracking product traceability, supply chain documentation, quality control results or audit logs, businesses must ensure that data is accurate, securely stored, and easily accessible for regulatory reviews. Failing to meet these requirements can result in costly fines, reputational damage, or legal complications. With an increasing emphasis on digital record-keeping, organizations need reliable systems that eliminate manual inefficiencies while maintaining full compliance.

Benefits of Automating Compliance Processes

Automating regulatory tracking offers several key advantages:

  • Reduced Administrative Burden – Automated data collection and reporting free up employees from time-intensive manual tasks.

  • Minimized Errors – Digital record-keeping ensures accuracy, preventing misreporting that could lead to compliance violations.

  • Timely Reporting – Automated alerts and scheduled reports ensure businesses submit required documentation on time.

  • Enhanced Security and Auditability – Secure, centralized databases provide tamper-proof records for regulatory reviews and audits.

By integrating automation into compliance workflows, businesses can focus on growth and operations rather than navigating complex reporting requirements.

How Claris FileMaker Simplifies Regulatory Tracking

Claris FileMaker is an ideal platform for developing custom compliance solutions tailored to industry-specific tracking requirements. Businesses can build systems that:

  • Automatically generate compliance reports

  • Maintain a centralized database of auditable records

  • Integrate with existing enterprise systems for seamless data flow

  • Provide real-time updates on regulatory tracking metrics

A properly designed FileMaker’s interface allows organizations to customize workflows for compliance management while ensuring that records remain secure, up to date, and readily available when needed. And, a user-friendly interface ensures that these processes are maintained without heavy burdens on professional staff.

Conclusion

Meeting regulatory tracking requirements efficiently is essential for avoiding compliance risks and maintaining operational integrity. Claris FileMaker offers  flexible, automated solutions that simplify compliance processes, reduces administrative burdens, and ensures accurate reporting. Interested to learn more about how Claris FileMaker can solve for regulatory tracking? Reach out to Kyo Logic here.

 

Can Your FileMaker Do This? Smart Work Order Automation

Can Your FileMaker Do This? Smart Work Order Automation in FileMaker

Work orders are the backbone of manufacturing operations—tracking production tasks, material usage, and job status. However, many companies still rely on outdated, manual job travellers, or fragmented systems to manage them, leading to inefficiencies, bottlenecks, and missed deadlines.

What if your work orders could adjust dynamically in real time?
With FileMaker, they can.

FileMaker’s smart automation features allow manufacturers to optimize production scheduling, reduce errors, and ensure smooth operations. Instead of manually tracking job progress and materials, FileMaker can dynamically update work orders based on real-time inventory, client requests, equipment availability, and shifting deadlines.

The Problem with Traditional Work Order Management

Most work order systems are static—once created, they don’t adapt to changing conditions like:

  • Material shortages delaying production.

  • Equipment downtime causing workflow bottlenecks.

  • Last-minute order changes requiring rescheduling.

  • Lack of real-time tracking, leaving teams in the dark about progress.

As a result, manufacturers either overproduce, underproduce, or constantly react to disruptions, leading to inefficiencies and higher costs. Inability to react to late-breaking changes can lead manufacturers to be downgraded in customer performance report cards.

How FileMaker Can Automate and Optimize Work Orders

Instead of using spreadsheets or standalone ERP modules, FileMaker can dynamically manage work orders, responding to real-time data from inventory, production status, and labor availability.

  • Dynamic Scheduling – FileMaker automatically adjusts production timelines based on inventory levels, supplier updates, and machine availability. If a critical material is delayed, the system reschedules work orders without manual intervention.

  • Real-Time Visibility – Managers and teams can track production progress live, with FileMaker updating work order statuses as jobs are completed, eliminating the need for manual status updates.

  • Automated Alerts & Notifications – Set up FileMaker to send automated emails or mobile notifications when:

    • A job is completed and ready for the next step.

    • Materials arrive and production can resume.

    • A delay is detected, prompting a rescheduling decision.

  • Seamless Integration – FileMaker can connect with ERP, supply chain, and quality control systems, reducing duplicate data entry and ensuring accurate reporting.

Use Case: Smart Work Order Adjustments in Real-Time

The Challenge:
A precision metal parts manufacturer may rely on a static scheduling system that assigns work orders based on predefined lead times. When material delays occur, production stalls, forcing employees to manually adjust schedules, leading to bottlenecks and late deliveries.

The FileMaker Solution:

  • Auto-adjusted due dates based on supplier updates, keeping production aligned with material availability.

  • Reallocated resources when a machine became available sooner, ensuring continuous workflow.

  • Triggered alerts for purchasing teams to reorder materials before stock levels ran low.

The Results:
30% potential reduction in production delays
Increased output with fewer manual adjustments
Savings on overtime and emergency shipping costs

The Bottom Line: FileMaker is More Than Just a Database—It’s a Real-Time Manufacturing Assistant

If you’re still managing work orders manually, you’re missing an opportunity to improve efficiency and stay ahead in the reshoring movement. As more companies bring production back onshore, smart, automated work order management will be key to competing with low-cost overseas alternatives.

 

Are you ready to optimize your manufacturing workflows with FileMaker? Let’s connect to discuss how we can help.

 

Calculate Order Profitability in Real Time, Including Freight Costs

For businesses operating in cost-sensitive industries, tracking profitability in real time is essential to maintaining strong margins and operational efficiency. Freight costs, in particular, can fluctuate based on fuel prices, carrier rates, and shipping distances, making it difficult to assess profitability accurately without a dynamic system in place. Claris FileMaker provides a powerful solution by offering customizable dashboards that calculate real-time profitability, factoring in all associated costs, including freight.

The Need for Real-Time Profitability Calculations

Profitability isn’t static—costs can shift due to supplier pricing, shipping rates, and unexpected surcharges. Without real-time tracking, businesses risk underpricing products or absorbing hidden costs that eat into margins. By integrating profitability calculations into daily operations, businesses can proactively adjust pricing, negotiate better shipping rates, and optimize supply chain decisions. Claris FileMaker helps streamline this process by automating cost calculations, ensuring that every order is assessed with up-to-date cost variables.

Benefits of Including Freight Costs in Profitability Analysis

Freight costs can significantly impact overall profitability, especially for businesses managing high-volume or low-margin orders. Factoring in freight expenses alongside material costs and operational overhead provides a complete financial picture, allowing businesses to:

  • Set accurate pricing that maintains profitability

  • Identify cost-saving opportunities in logistics

  • Improve decision-making on order fulfillment and shipping methods

  • Enhance forecasting and financial planning

For companies handling large-scale logistics or working with 3PL providers, integrating freight costs into real-time profitability calculations prevents unexpected financial losses and improves overall efficiency.

How Claris FileMaker Powers Profitability Tracking

Claris FileMaker simplifies profitability tracking by offering customizable dashboards. These dashboards can pull in real-time cost data and integrate seamlessly with other trucking and cost-generating platforms. Businesses can build systems that automatically update freight costs, material expenses, and other financial variables, providing instant insights into order profitability. Features like automated reporting, dynamic cost adjustments, and integration with external logistics data ensure that decision-makers always have access to accurate financial information. By leveraging Claris FileMaker, businesses can maintain tighter control over costs and adapt to market fluctuations with confidence.

Tracking order profitability in real time—especially when factoring in freight costs—is essential for businesses looking to protect margins and improve operational efficiency. Claris FileMaker provides the tools to automate cost calculations, generate real-time insights, and ensure every order remains profitable. Interested to learn more about how Claris FileMaker can solve for real-time profitability tracking? Reach out to Kyo Logic here.

Installing Local LLM for FileMaker – Made Simple!

🚀 Join Us Live! Want to see this setup in action? We’ll be showcasing the full installation and implementation of Local LLM for FileMaker live at our upcoming CFDG meetup. Don’t miss this hands-on session where you can ask questions and see everything in real time.

 

🔗 Reserve your spot here

 

 

1. Create Ubuntu Server

Below are instructions for creating an Ubuntu 24.04 server using AWS EC2. These instructions should be similar for other cloud services like Microsoft Azure.

Launch a New EC2 Instance

  1. In AWS EC2, click Launch Instance
  2. Select the following options
    • AMI – Ubuntu 24.04 (x86)
    • Instance Type – t3a.large (or your preferred size)
    • Key Pair – Select or create a new key pair
    • Subnet – Choose an appropriate subnet (e.g., us-east-1c)
    • Security Groups – Ensure SSH (port 22), HTTP (port 80), and port 8080 are open
    • Storage – ~30GB recommended
    • IAM Role – If you have an instance profile with needed permissions, select it here (optional but recommended)

Create and Associate an Elastic IP

  1. Reserve a new Elastic IP in AWS
  2. Associate it with your new EC2 instance
  3. In your DNS settings, create an A record pointing to the Elastic IP

Connect to the EC2 Instance

Use AWS Systems Manager Session Manager or SSH

2. Update Ubuntu

After connecting, update your instance
sudo -i
sudo apt update && sudo apt upgrade -y
sudo apt dist-upgrade -y
sudo apt autoremove -y
sudo shutdown -r now
Reconnect after the reboot.

3. Download Open Source LLM Files

📌 Important – If you’ve upgraded from FileMaker Server v20, ensure you have the latest FileMaker Server v21 version of the Open Source LLM files.
🔗 Download Open_Source_LLM.zip
Download directly to your server
cd ~
sudo apt install zip
sudo wget https://kyologic.com/wp-content/uploads/2025/02/Open_Source_LLM.zip -O /home/ubuntu/Open_Source_LLM.zip
sudo unzip Open_Source_LLM.zip
Set Read & Write Permissions to letsencrypt directory
sudo chown -R ubuntu:ubuntu /home/ubuntu
sudo chmod -R a+rx /home/ubuntu
Remove Unneeded Files
sudo rm Open_Source_LLM.zip
sudo rm -r __MACOSX
OR
Transfer the files to your server from your computer
scp -i "/local/path/to/keypairfile" -r /local/path/to/Open_Source_LLM ubuntu@your-server-ip:/home/ubuntu/

4. Install Certbot for SSL

Use Certbot to manage SSL certificates
cd ~
sudo snap install core && sudo snap refresh core
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
sudo shutdown -r now
Reconnect after the reboot.

5. Configure Firewall

cd ~
sudo ufw allow ssh
sudo ufw allow 80/tcp
sudo ufw allow 8080/tcp
sudo ufw enable

6. Obtain an SSL Certificate

Ensure DNS is pointed to your server’s IP before running the following
Note – Replace llm.mydomain.com with your domain name.
sudo certbot certonly --standalone --preferred-challenges http -d llm.mydomain.com --dry-run
sudo certbot certonly --standalone --preferred-challenges http -d llm.mydomain.com
Enable auto-renewal
sudo systemctl enable snap.certbot.renew.timer
  Configure Hooks for Auto-Renew
Certbot needs to open port 80 temporarily when renewing.
Create pre- and post-hook scripts
cd /etc/letsencrypt/renewal-hooks/pre
sudo nano pre-hook.sh
  Contents of pre-hook.sh
#!/bin/bash
# Open port 80
ufw allow 80/tcp
Save (Ctrl+O, Enter) and exit (Ctrl+X). Then make executable
sudo chmod +x pre-hook.sh
cd /etc/letsencrypt/renewal-hooks/post
sudo nano post-hook.sh
  Contents of post-hook.sh
#!/bin/bash
# Close port 80
ufw deny 80/tcp
#Reboot Server
sudo shutdown -r now
Save (Ctrl+O, Enter) and exit (Ctrl+X). Then make executable
sudo chmod +x post-hook.sh
  Test renewal
sudo certbot renew --dry-run
This should reboot your server

7. Generate Admin PKI Keypair & JWT for Authentication

  1. Download Soliant’s SSH Key & JWT Tool
  2. Open in FileMaker
  3. Create a new record
  4. Enter a Name & # of expiration days
  5. Press the Generate Keypair & Generate JWT buttons
Add Admin PKI Public Key file
sudo mkdir /etc/letsencrypt/auth_key
sudo nano /etc/letsencrypt/auth_key/localllm.key.pub
Copy the Public Key from SSH Keys & JWT to your clipboard. Paste the Public Key in the localllm.key.pub file. Save (Ctrl+O, Enter) and exit (Ctrl+X).   Add Admin PKI Private Key file
sudo nano /etc/letsencrypt/auth_key/localllm.key
Copy the Private Key from SSH Keys & JWT to your clipboard. Paste the Private Key in the localllm.key file. Save (Ctrl+O, Enter) and exit (Ctrl+X).   Set Read & Write Permissions to letsencrypt directory again
sudo chown -R ubuntu:ubuntu /etc/letsencrypt
sudo chmod -R a+rx /etc/letsencrypt

8. Install Miniconda & Python Environment

Install Miniconda
cd /home/ubuntu
mkdir -p ~/miniconda3
sudo wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh
bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3
sudo rm ~/miniconda3/miniconda.sh
source ~/miniconda3/bin/activate
conda init --all
Create & activate Python environment
conda create --name <name>
conda activate <environment name>
conda install python=3.9.18
pip install jwt && pip uninstall PyJWT && pip install PyJWT
conda install -c conda-forge sentence-transformers
Install Open Source LLM dependencies
pip install -r /home/ubuntu/Open_Source_LLM/requirements.txt
sudo shutdown -r now

9. Run & Test the Local LLM Server

Set environment variables
sudo chown ubuntu:ubuntu /home/ubuntu/ -R
sudo chmod -R 755 /home/ubuntu
sudo chmod 700 ~/.ssh
sudo chmod 600 ~/.ssh/authorized_keys
sudo shutdown -r now
export PKI_KEYFILE="/etc/letsencrypt/auth_key/localllm.key.pub"
export CERTFILE="/etc/letsencrypt/live/llm.mydomain.com/fullchain.pem"
export KEYFILE="/etc/letsencrypt/live/llm.mydomain.com/privkey.pem"
conda activate <environment name>
Run python
python3 /home/ubuntu/Open_Source_LLM/server/fm_LLMOS_StartServer.pyc
📌 Test connection using the Claris Academy AI Fundamentals demo file.
  • Open Meetings_Solution in FileMaker
  • On the initial layout ( Meeting Details), enter Layout Mode and remove the Layout Calculation at the bottom of the page and add the field Details_Embedding to the layout.
  • Open the Script Workspace and find the Configure AI Account script
    • Adjust the Configure AI Account script step
      • Model Provider – Custom
      • Endpoint – https://llm.mydomain.com:8080
      • API key – copy and paste the JWT from SSH Keys & JWT file
  • Now Navigate to the Embedding Details Data script
    • Adjust the Insert Embedding script step
      • Embedding Model – all-MiniLM-L12-v2
  • Clear out the contents of the Details_Embedding field script
  • Run the Embedding Details Data script
  • Check and confirm that there were no errors and you have a new .fve file in the Details_Embedding field.
Keep this file open, we will use it to run a few more tests in the upcoming steps.

10. Automate the LLM Server with PM2

Create a pm2.io account.
Enter a Bucket Name You should now see this screen
Install PM2 and link to your account
If you are still in the conda command, enter ^C to exit.
sudo shutdown -r now
sudo -i
sudo apt install npm -y
npm install -g pm2
pm2 link [[Keys from PM2 Website]]
You should now see a new message on the PM2 web page saying you are linked
shutdown -r now
Start the server process with PM2
conda activate <environment name>
CERTFILE="/etc/letsencrypt/live/llm.mydomain.com/fullchain.pem" KEYFILE="/etc/letsencrypt/live/llm.mydomain.com/privkey.pem" PKI_KEYFILE="/etc/letsencrypt/auth_key/localllm.key.pub" pm2 start python3 --name <environment name> -- /home/ubuntu/Open_Source_LLM/server/fm_LLMOS_StartServer.pyc
  Test
Go to FileMaker, clear Details_Embedding field
Run the Embedding Details Data script
Verify a new .fve file in the Details_Embedding field.
Save the process & enable auto-start
pm2 save
pm2 startup
It will return a command looking something like this: sudo env PATH=$PATH:/usr/bin /usr/local/lib/node_modules/pm2/bin/pm2 startup systemd -u ubuntu –hp /home/ubuntu
Copy and paste the command and press Enter
sudo shutdown -r now
  Final Test
Go to FileMaker, clear Details_Embedding field
Run the Embedding Details Data script
Verify a new .fve file is created
🎉 Success! Your Local LLM Server is now running on Ubuntu 24.04 with automated startup.

🚀 See This in Action!
Want a live walkthrough of setting up Local LLM for FileMaker on Ubuntu? Join our Connecticut FileMaker Developers Group (CFDG) meetup where we’ll demo this setup step by step and answer all your questions!
🔗 Register here

Manage Dynamic Costing in Low-Margin Commodities with Claris FileMaker

In the world of low-margin commodities, profitability hinges on a business’s ability to adapt to fluctuating costs. Price changes, market volatility, and supply chain disruptions can quickly erode margins, making real-time cost updates a necessity. For businesses and 3PL providers managing these sensitive markets, dynamic costing tools offer a lifeline by enabling real-time updates and ensuring competitive pricing. Claris FileMaker provides a powerful platform for building flexible systems that streamline cost management and protect profitability in even the most volatile environments.

The Need for Dynamic Costing in Low-Margin Markets

Low-margin commodities are inherently unpredictable. From changing material prices to fluctuating freight rates, businesses must adapt quickly to maintain profitability. For 3PL providers, who often operate as intermediaries between suppliers and buyers, the stakes are even higher. Dynamic costing tools are essential in these markets, enabling real-time adjustments that reflect current market conditions. New Claris FileMaker AI tools allow modelling data to analyze trends and optimize decisions. By integrating dynamic costing into their workflows, businesses and 3PL operators can minimize risk and ensure that every transaction remains profitable.

Benefits of Real-Time Costing Tools

Dynamic pricing tools provide critical advantages for businesses navigating low-margin markets. Real-time updates ensure that costs accurately reflect current market conditions, helping businesses maintain their margins. These tools also enable better decision-making by providing visibility into pricing trends, cost breakdowns, and profitability forecasts. For 3PL providers managing logistics and contracts across the supply chain, dynamic costing systems simplify operations and reduce the likelihood of costly miscalculations.

How Claris FileMaker Powers Dynamic Costing

Claris FileMaker is a robust solution for creating dynamic costing tools tailored to the specific needs of businesses and 3PL providers. With FileMaker, businesses can design systems that integrate real-time market data, automatically update costs, and generate detailed pricing reports. The platform’s flexibility allows users to build workflows that account for variables like freight rates, supplier costs, and exchange rates, ensuring that all aspects of cost management are covered. By centralizing and automating the costing process, Claris FileMaker helps businesses protect their margins and stay ahead in competitive markets.

Managing dynamic costs in low-margin commodities requires tools that adapt to market changes in real time. Claris FileMaker empowers businesses and 3PL providers with customizable solutions that streamline cost management, improve visibility, and protect profitability. Interested to learn more about how Claris FileMaker can solve for dynamic costing? Reach out to Kyo Logic here.

 

Track Buyers, Sellers, and Trucking Manifests

Managing commodity logistics involves a complex network of buyers, sellers, and trucking manifests that must work together seamlessly. Without a centralized system, inefficiencies and miscommunication can disrupt the supply chain, leading to delays and increased costs. For 3PL providers, who are often tasked with coordinating multiple clients’ logistics needs, these challenges are even more pronounced. Claris FileMaker offers a powerful, customizable platform that enables businesses to streamline their logistics operations, providing real-time tracking and full visibility across the supply chain.

Streamlining Supply Chain Coordination

Smooth coordination between buyers, sellers, and trucking operations is critical for efficient commodity logistics. Custom systems built with Claris FileMaker allow businesses to centralize logistics data, creating a unified hub for tracking and managing key supply chain elements. For 3PL providers, this is particularly valuable, as they often juggle multiple transactions and shipments simultaneously. By offering a single platform to manage all stakeholders, Claris FileMaker ensures that everyone remains aligned and informed throughout the process.

The Role of Real-Time Tracking

In logistics, timing is everything. Real-time tracking enables businesses to monitor the progress of shipments, update stakeholders promptly, and adjust plans as needed. For 3PL providers, this level of transparency is essential for maintaining client trust and ensuring on-time deliveries. Claris FileMaker integrates real-time data updates into its logistics systems and communicates effectively with other logistics platforms, allowing businesses to track trucking manifests, buyer orders, and seller commitments in one place. This not only boosts efficiency but also provides the visibility needed to anticipate and resolve potential bottlenecks.

How Claris FileMaker Supports Logistics Management

Claris FileMaker excels at simplifying the complexities of logistics and 3PL operations. Its customizable interface enables businesses to design systems tailored to their unique workflows, from tracking trucking manifests to managing buyer and seller data. With FileMaker, companies can integrate third-party tracking tools, automate notifications, and generate detailed reports that improve decision-making. By centralizing all logistics data, FileMaker empowers businesses to optimize their supply chain operations and maintain smooth coordination across the board.

Tracking buyers, sellers, and trucking manifests is essential for efficient commodity logistics, especially for 3PL providers managing diverse client needs. Claris FileMaker offers a robust solution for streamlining logistics operations, providing real-time updates, centralized data, and seamless coordination. Interested to learn more about how Claris FileMaker can solve for logistics and 3PL management? Reach out to Kyo Logic here.

 

Installing Keycloak 26 on Ubuntu 24.04 (AWS)

At Kyo Logic, we specialize in custom software solutions and FileMaker consulting services. During one of our recent internal projects, a team member was experimenting with Keycloak 26 on AWS and decided to create a simple, repeatable guide for future reference. We’d like to thank our friends over at Sound Essentials, who provided instructions for installing Keycloak 17 on Ubuntu 20.04.3 LTS. Our instrcutsions would not be possible without their original guidance, which we’ve modified for our own purposes.
We realized it could be helpful to share this process more broadly. Below you’ll find a step-by-step outline of how to get Keycloak 26 up and running on an Ubuntu 24.04 server in AWS, complete with MySQL and SSL certificates managed by Certbot.
Please note that Keycloak is not a FileMaker-related tool. However, as consultants who often deal with diverse infrastructure solutions—ranging from identity management to custom app deployments—it’s important for us to have guides like this in our internal knowledge base. If you have any questions about this or about our FileMaker consulting services, reach out at www.kyologic.com/contact/.
Keycloak is a powerful open‐source identity and access management solution. In this tutorial, we’ll set up Keycloak 26 on an Ubuntu 24.04 server in AWS, secure it with SSL certificates via Certbot, and configure it to run on port 443. We’ll use MySQL as our database.
Note – This guide assumes you have an AWS account and are comfortable with launching EC2 instances and connecting to them. Replace keycloak.mydomain.com with your actual domain name wherever indicated.

What You Need To Get Started

  • A Linux server running Ubuntu 24.04 (x86) or an account to a server hosting platform such as AWS or Microsoft Azure
  • A Fully Qualified Domain Name (FQDN) and access to your domain’s Domain Name System (DNS)

1. Create Ubuntu Server

  • Below are instructions for creating a server using AWS EC2. The instructions should be similar for other services.

Launch a New EC2 Instance

  1. In AWS EC2, click Launch Instance
    • Select the following options
      1. AMI – Ubuntu 24.04 (x86)
      2. Instance Type – t3a.xlarge (or your preferred size)
      3. Key Pair – Select or create a new key pair
      4. Subnet – Choose an appropriate subnet (e.g., us-east-1c)
      5. Security Groups – Ensure you have rules for SSH (port 22), HTTP (port 80), and HTTPS (port 443 and 8443).
      6. Storage – ~30 GB recommended
      7. IAM Role – If you have an instance profile with needed permissions, select it here (optional but recommended).
  2. Create and Associate Elastic IP
    • Reserve a new Elastic IP in AWS
    • Associate it with your new EC2 instance
  3. In your DNS, create an A record for the IP Address of your Elastic IP using the subdomain of your choosing.
  4. Connect to EC2
    • Use AWS Systems Manager Session Manager or SSH, depending on your preference
      1. If you click on Connect on the Instance, AWS will give you instructions to Connect.

2. Update Ubuntu

When first connecting, it’s best practice to update all packages with the following commands
sudo -i
sudo apt update
sudo apt upgrade
sudo apt dist-upgrade
sudo apt autoremove
sudo shutdown -r now
After the reboot, reconnect to your instance.

3. Install and Configure MySQL

Keycloak needs a database. Here’s how to install MySQL on Ubuntu
cd ~
sudo apt install mysql-server
sudo mysql
Set the root user’s MySQL password
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'MYSQL_DATABASE_PASSWORD';
Exit;
Secure the MySQL installation
sudo mysql_secure_installation
Follow the prompts (you can answer “Yes” to remove anonymous users, disallow root remote login, etc.).
Create the Keycloak database and user
sudo mysql -u root -pMYSQL_DATABASE_PASSWORD
In sql
CREATE DATABASE keycloak CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'keycloak'@'localhost' IDENTIFIED BY 'MYSQL_DATABASE_PASSWORD';
GRANT ALL PRIVILEGES ON keycloak.* TO 'keycloak'@'localhost';
FLUSH PRIVILEGES;
exit;
Note – Replace MYSQL_DATABASE_PASSWORD with a strong, unique password.

4. Install Certbot (for SSL Certificates)

We’ll use Certbot (via snap) to generate and manage SSL certificates.
cd ~
sudo snap install core
sudo snap refresh core
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
sudo shutdown -r now
After the reboot, reconnect again.

5. Configure the Firewall

We’ll open only the necessary ports. Ubuntu’s default firewall tool is ufw
cd ~
sudo ufw allow ssh
sudo ufw allow 80/tcp
sudo ufw allow 8443/tcp
sudo ufw enable

6. Obtain an SSL Certificate

Choose your domain nameMake sure your DNS is pointed to the IP address of this instance (e.g., keycloak.mydomain.com).
Note – Replace keycloak.mydomain.com with your domain name. Obtain and verify certificate
cd ~
sudo certbot certonly --standalone --preferred-challenges http -d keycloak.mydomain.com --dry-run
If the dry run succeeds, run it again for the actual cert
sudo certbot certonly --standalone --preferred-challenges http -d keycloak.mydomain.com
Deny HTTP traffic (if desired)
sudo ufw deny 80/tcp
Enable auto-renewal
sudo systemctl list-units --type timer
sudo systemctl enable snap.certbot.renew.timer
sudo systemctl status snap.certbot.renew.timer
Configure Hooks for Auto-Renew
Certbot needs to open port 80 temporarily when renewing. Create pre- and post-hook scripts
cd /etc/letsencrypt/renewal-hooks/pre
sudo nano pre-hook.sh
Contents of pre-hook.sh
# Open port 80
ufw allow 80/tcp
Save (Ctrl+O, Enter) and exit (Ctrl+X). Then make executable
sudo chmod +x pre-hook.sh
cd /etc/letsencrypt/renewal-hooks/post
sudo nano post-hook.sh
Contents of post-hook.sh
# Close port 80
ufw deny 80/tcp
#Reboot Server
sudo shutdown -r now
Save and exit, then make executable
sudo chmod +x post-hook.sh

Test renewal
sudo certbot renew --dry-run
This should restart your server

7. Install Java & Other Dependencies

Keycloak 26 requires Java 17 or later. Let’s install OpenJDK 21
sudo apt install openjdk-21-jdk

8. Download and Prepare Keycloak

sudo apt install zip
Create a directory and download Keycloak
sudo mkdir -p /opt/keycloak
cd /opt/keycloak
sudo wget https://github.com/keycloak/keycloak/releases/download/26.1.0/keycloak-26.1.0.zip
sudo unzip keycloak-26.1.0.zip -d /opt/keycloak
sudo rm keycloak-26.1.0.zip
Create Keycloak user and group
sudo groupadd -r keycloak
sudo useradd -r -g keycloak -d /opt/keycloak -s /sbin/nologin keycloak
Give keycloak user ownership and privileges to keycloak and letsencrypt
cd /opt
sudo chown -R keycloak: keycloak
sudo chmod -R 755 /opt/keycloak/keycloak-26.1.0/bin/
sudo chmod -R 755 /etc/letsencrypt



9. Configure Keycloak

Edit Keycloak configuration
sudo nano /opt/keycloak/keycloak-26.1.0/conf/keycloak.conf
Insert/Update
db=mysql
db-username=keycloak
db-password=MYSQL_DATABASE_PASSWORD
Note – (This is the password from above)
https-certificate-file=/etc/letsencrypt/live/keycloak.mydomain.com/fullchain.pem
https-certificate-key-file=/etc/letsencrypt/live/keycloak.mydomain.com/privkey.pem
hostname=keycloak.mydomain.com
Note – (Replace keycloak.mydomain.com with your domain name)
https-port=8443
Build and start Keycloak
cd /opt/keycloak/keycloak-26.1.0
sudo bin/kc.sh build
sudo -E bin/kc.sh bootstrap-admin user
Note – This is to create a temporary user for access to keycloak. Once in keycloak, it is recommended that a permanent user be created and this temporary user deleted.
sudo -E bin/kc.sh start
Keycloak should now be running on https://keycloak.mydomain.com:8443/. Log into keycloak using the account created above and create a new user. Make sure to give this new user all available roles.

10. Configure Keycloak to Start Automatically

Press Ctrl+C to stop Keycloak, then create a systemd service
Create systemd unit file
sudo nano /etc/systemd/system/keycloak.service
Sample Contents (adjust as needed)
# /etc/systemd/system/keycloak.service
[Unit]
Description=Keycloak Server
After=syslog.target network.target mysql.service
Before=httpd.service

[Service]
User=keycloak
Group=keycloak
SuccessExitStatus=0 143
ExecStart=!/opt/keycloak/keycloak-26.1.0/bin/kc.sh start

[Install]
WantedBy=multi-user.target
Enable and Reboot
sudo systemctl daemon-reload
sudo systemctl enable keycloak
sudo shutdown -r now
sudo systemctl status keycloak
Keycloak should now run automatically on system boot.

11. Changing to Port 443

Adjust keycloak.conf
sudo nano /opt/keycloak/keycloak-26.1.0/conf/keycloak.conf
Change (or add)
https-port=443
Rebuild Keycloak
cd /opt/keycloak/keycloak-26.1.0
sudo bin/kc.sh build
Update Firewall Rules
sudo ufw delete allow 8443/tcp
sudo ufw allow 443/tcp
sudo shutdown -r now
Keycloak will now listen on standard HTTPS port 443, accessible at https://keycloak.mydomain.com.
You’ve successfully installed Keycloak 26 on an Ubuntu 24.04 EC2 instance, configured MySQL as the backend, and secured Keycloak with a valid SSL certificate using Certbot. You also set up systemd to ensure Keycloak starts automatically on reboot and moved it to port 443 for a cleaner URL.
Next Steps
Log in to your Keycloak admin console at https://keycloak.mydomain.com using the admin username/password you created.
Configure your realms, clients, and identity providers as needed.
Review Keycloak logs and manage system resources to ensure optimal performance.
For more instructions on how to configure your keycloak account, you can follow the instructions from our CFDG presentation on the topic here – https://youtu.be/-bqww9ggDjA
With your identity and access management solution in place, you can focus on integrating Keycloak into your applications and services! If you have any questions or run into issues, consult the official Keycloak documentation or your AWS documentation for further guidance.
That’s it! You now have a working Keycloak 26 setup in AWS. If you have any questions—or if you’d like to learn more about our FileMaker consulting services—visit us here.

Accelerating FileMaker Development with AI Code Builders

Accelerating FileMaker Development with AI Code Builders

In this post, we’ll explore how AI code builders—specifically ChatGPT Code Copilot—can help you create custom JavaScript widgets for FileMaker. We’ll walk through an example of building a signature pad, discuss best practices for prompting AI, and touch on some ethical and legal considerations involved in using AI-generated code.

Why Use an AI Code Builder?

AI code builders (e.g., ChatGPT Code Copilot, GitHub Copilot, etc.) leverage machine learning models trained on large amounts of programming data. They can assist developers by

  • Generating boilerplate or starter code automatically

  • Suggesting functions and syntax in real time

  • Speeding up iteration on front-end features like HTML, CSS, and JavaScript

AI Code builders allow you to build a widget or page without knowing ANY programming languages.

When used correctly, these tools can save hours of coding and debugging—especially for tasks that don’t necessarily require advanced, custom logic.

Key Considerations – Ethics, Legality, and Privacy

  1. Ethical Impact
    AI-driven tools can automate mid-level coding tasks, potentially affecting developer job roles. While it streamlines certain work, the long-term impact on developer careers is worth watching.

  2. Legal Concerns
    AI generators may source snippets of copyrighted code. While current U.S. legal direction makes direct infringement cases unlikely, it’s prudent to remain cautious about where the code originates.

  3. Privacy
    Anything you share with an AI tool could be integrated into its broader dataset. Never upload confidential information or proprietary code without anonymizing or removing sensitive details.

Best Practices When Prompting ChatGPT

Through trial and error, the webinar revealed a handful of tips to get the best results from AI code builders

  1. Craft a Strong Initial Prompt

    • Be specific about what you want, from the programming language to the functionalities and layout.

    • Bad Example – “Build me a signature pad using Javascript, CSS and HTML with Clear, Undo, Save and Cancel buttons.”

    • Good Example – “Build me a signature pad using HTML, CSS and Javascript. The page should include a header titled "Sign Below" a signing canvas and buttons below the canvas.

The buttons will be the following

Clear – Completely removes all drawings from the canvas

Undo – removes the most recent drawing from the canvas

Submit – Saves the canvas to a .png image and stores it as base64 text. It then should run the function FileMaker.PerformScript("SaveSignature" ; base64code of image);

Cancel – Runs the function FileMaker.PerformScript("CancelSignature" ; "" )

The buttons should have a black background with white writing. They should be on the same row and ordered from left to right Clear, Undo, Submit, Cancel. 

The Clear and Undo buttons should be grouped on the left side of the screen and the Submit and Cancel buttons should be grouped on the right side of the screen.

The background for the page and for the signature pad should be white.

Build me the code for this page in 3 separate files index.html, style.css, script.js“

  1. Provide Existing Code Snippets

    • If you’re modifying existing code, paste that code into ChatGPT’s prompt.

    • AI often “forgets” prior context or overwrites essential lines if you ask it to regenerate the entire codebase.

  2. Make Incremental Requests

    • After generating an initial version, ask for changes in small, specific steps (e.g., “reduce the button size,” “add rounded corners,” or “change the header’s font size”).

    • Requesting many modifications at once can confuse the AI and lead to broken or incomplete solutions.

  3. Ask for Only the Changes

    • Rather than asking for the entire file again, say “Please provide only the lines that need to be updated or added.”

    • This preserves previously working code and reduces the likelihood of accidental regressions.

  4. Avoid Complex Multi-tasking

    • AI code builders can lose track of context during multi-part tasks. Break them down into small, separate requests.

Step-by-Step Example – Building a Signature Pad in FileMaker

Goal – Create a signature pad that captures a user’s drawing, supports undo/clear, and saves the result as a base64-encoded image inside FileMaker.

  1. Outline Requirements

    • HTML – A simple layout with a canvas, header, and four buttons (Clear, Undo, Submit, Cancel).

    • CSS – Basic styling (button size, background color, alignment).

    • JavaScript – Canvas drawing logic (capturing strokes, undo/redo stacks), plus two FileMaker script calls

      • FileMaker.PerformScript("Save Signature", base64Code)

      • FileMaker.PerformScript("Cancel Signature")

  2. Create a Detailed Prompt
    In ChatGPT, specify –
    “Build me a signature pad using HTML, CSS, and JavaScript, including a header titled ‘Sign Below,’ a canvas, and four buttons. The ‘Submit’ button should encode the canvas as base64 and call FileMaker.PerformScript("Save Signature", <base64>), etc.”

  3. Generate Files
    ChatGPT returns – index.html (or combined HTML file)

    • style.css (for layout and styling)

    • script.js (draw logic and button handlers)

  4. Refine & Test

    • If the AI lumps HTML/CSS/JS together, ask for separate files or placeholders for easy inclusion in FileMaker fields.

    • Test your initial code locally (e.g., open the HTML in a browser). Check if Undo/Clear works and if Submit/Cancel behave as expected.

  5. Integrate Into FileMaker

    • Store the HTML, CSS, and JS in FileMaker fields.

    • Use a calculation field or a “web viewer” that substitutes in the CSS/JS code.

    • Ensure “Allow interaction” and “Allow JavaScript to perform FileMaker scripts” are enabled in the web viewer settings.

  6. Add Final Touches

    • Prompt ChatGPT for style updates (e.g., “Make the header smaller and unbold it,” “Group the Clear and Undo buttons on the left,” etc.).

    • Manually adjust any margins or design elements if ChatGPT’s output isn’t pixel-perfect.

Result: A working signature pad that you can open in FileMaker, draw on, and automatically store the output as a base64-encoded image—perfect for e-signatures or doodles.

Beyond Signatures – A Time-Tracking Example

The webinar also showcased a more advanced JavaScript widget – a time-tracking dashboard built entirely via AI-assisted code, then dropped into FileMaker. It features

  • Dynamic plus and delete buttons for line items

  • Light and dark modes

  • Start and Stop Timers

  • The entire front-end (HTML, CSS, JS) generated by ChatGPT with minimal manual intervention

This advanced use case illustrates how quickly you can evolve from small widgets (like a signature pad) to more complex applications—increasing interactivity and user experience within FileMaker, all powered by AI-generated front-end code.

Closing Thoughts

AI tools like ChatGPT can drastically reduce development time and open doors to front-end interactions you might not otherwise build by hand. The key is prompt engineering—learning how to give precise instructions and incremental feedback.

Remember

  • Always keep ethical, legal, and privacy considerations in mind.

  • Triple-check AI-generated code for security issues and correctness.

  • Use a “rinse and repeat” process – prompt, refine, test, and integrate.

By leveraging these best practices, you’ll be well on your way to creating powerful, user-friendly JavaScript widgets that enhance FileMaker’s functionality—without having to become a front-end development expert.

Further Resources

Have questions or want to share your own AI-generated FileMaker widget? Drop a comment or reach out to continue the conversation. Happy coding!