Deprecated: Function jetpack_form_register_pattern is deprecated since version jetpack-13.4! Use Automattic\Jetpack\Forms\ContactForm\Util::register_pattern instead. in /var/www/html/wp-includes/functions.php on line 6078

Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/functions.php:6078) in /var/www/html/wp-content/plugins/all-in-one-seo-pack/app/Common/Meta/Robots.php on line 87

Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/functions.php:6078) in /var/www/html/wp-content/plugins/all-in-one-wp-security-and-firewall/classes/wp-security-utility.php on line 216

Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/functions.php:6078) in /var/www/html/wp-content/plugins/all-in-one-wp-security-and-firewall/classes/wp-security-utility.php on line 216

Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/functions.php:6078) in /var/www/html/wp-includes/feed-rss2.php on line 8
API | Fulcrum Dynamic https://fulcrumdynamic.com Custom Software Development and Consulting Tue, 24 Jan 2023 00:40:28 +0000 en-US hourly 1 https://i0.wp.com/fulcrumdynamic.com/wp-content/uploads/2019/09/FD-logo-official-transparent-square.png?fit=32%2C32&ssl=1 API | Fulcrum Dynamic https://fulcrumdynamic.com 32 32 208275604 Fulcrum Dynamic Earns First Review on Clutch https://fulcrumdynamic.com/fulcrum-dynamic-earns-first-review-on-clutch/ Fri, 08 Oct 2021 15:33:55 +0000 https://fulcrumdynamic.com/?p=1139 Technology plays a crucial role in maintaining and scaling your businesses. You need the right tools to accomplish these goals.  But in an ever-evolving landscape, it can be nearly impossible to keep up with all […]

The post Fulcrum Dynamic Earns First Review on Clutch first appeared on Fulcrum Dynamic.]]>
Technology plays a crucial role in maintaining and scaling your businesses. You need the right tools to accomplish these goals.  But in an ever-evolving landscape, it can be nearly impossible to keep up with all the available technologies you need to help your business to succeed.  That’s where we come to help you.

Fulcrum Dynamic is a small design and development company based in Round Rock, Texas. Established in 2019, our company goes above and beyond to make sure you have what you need to save time, resources, and effort. We bring world-class solutions to help you streamline your processes and lessen mundane concerns.

Working with an expert to wrangle the wild world of technology is vital, but choosing the right partner is almost as hard as figuring out the technology itself.  Who can you trust?

As we aim to prove the quality of our services to the public, the news that we’re about to share excites us. Most recently, Fulcrum Dynamic made its official debut on Clutch and received amazing client feedback for our work.

What is Clutch?

For those who aren’t familiar with them, Clutch is a B2B review and rating platform designed to help browsers navigate through the IT, development, marketing, and business services fields. The site is trusted by millions of corporate buyers and service providers, and it’s home to a massive collection of data-driven client reviews.

For our first-ever review, Dan Francis, the owner of StepStone Realty, LLC, wrote about our web development services. StepStone has been a long-time partner over the years, and the review was published on September 09, 2021.

Our main responsibilities involved API integration, middleware integration, and ensuring security upgrades for their platform. We worked closely with the client to make sure everything ran smoothly despite the challenges brought by the pandemic last year.

In the results and feedback section, the client wrote this when asked about what was the most unique aspect of our team:

“They were easy to work with, understood the goals, and easy to read code, allowing them a successful partnership.” — Owner, StepStone Realty, LLC

This is such an amazing review. This is an important milestone for us and we look forward to gaining traction on Clutch soon. If you’re curious about the full scope of this project, you may check out our profile on Clutch for further details.

With that being said, the whole Fulcrum Dynamic team sends their sincerest appreciation and thanks to StepStone Realty, LLC for helping us with our first review. As for our other clients, you can help us in this journey by providing us with your insights.

Making Waves in the ECommerce Space

The present and the future lies in eCommerce. As businesses take on the massive industry, Fulcrum Dynamic is stoked to be a trusted partner. Just recently, we’ve been made aware that Top Design Firms recognized us for our professional eCommerce development work.

To get you up to speed, Top Design Firms is a new B2B website that showcases the work and projects of industry experts like ourselves. According to their latest findings, Fulcrum Dynamic is among the top eCommerce web design and development companies in 2021.

We could not be more grateful for this overwhelming recognition. Our team is pumped to help more companies venture into the vast eCommerce market. Thank you Top Design Firms, our team, and our valued clients! Work with us and let’s help you reach your business goals. Don’t hesitate to drop us a line and tell us more about what projects you have in mind. Harness the power of technology with Fulcrum Dynamic.

The post Fulcrum Dynamic Earns First Review on Clutch first appeared on Fulcrum Dynamic.]]>
1139
Case Study: Bill of Lading Edit Interface using AngularJS for Logistics Company https://fulcrumdynamic.com/case-study-bill-of-lading-edit-interface-using-angularjs-for-logistics-company/ Mon, 28 Dec 2020 15:00:00 +0000 https://fulcrumdynamic.com/?p=889 We built a special admin interface to help support staff fix data entry errors on a logistics company's bill of lading documents, and correctly track those edit for later reference.

The post Case Study: Bill of Lading Edit Interface using AngularJS for Logistics Company first appeared on Fulcrum Dynamic.]]>
Client

Our client is a market leader in oil field logistics and transload services.  They own and manage a nationwide network of transload terminals where they store and move millions of pounds of bulk sand, crude, and other materials to and from trucks, railcars, silos, and other containers.  Their services are a critical element in the energy supply chain in North America.

A silo installation at one of the client’s transload terminals. Product is brought in via rail, and loaded into the silos with a bucket elevator. Trucks drive under the silos to be loaded, before delivering proppant the last mile, to the actual well site.

Problem

The client runs transload facilities across the country, with an especially high concentration in the Southwest. At these facilities, they load, unload, and store bulk materials for their customers, primarily frac sand to be used in drilling oil wells. When material is loaded and shipped out from the terminal via truck, the driver is issued a bill of lading. The client manages all of the operations at their terminals with their custom terminal management application, which we helped them build.

A sand truck, waiting to be loaded.

All load actions are tracked in the application, arrival and departure weights for the trucks are captured from the on-site truck scales, and a signature is captured electronically from the driver. The application uses all this data to automatically generate a correct and accurate bill of lading, which is printed out and handed to the driver. A copy is also stored in the cloud as a PDF for later reference.

The bill of lading is automatically generated as a PDF, which can be printed. The driver’s signature is captured electronically and placed on the appropriate section of the document.

The process is highly efficient and allows them to quickly process trucks at their sites, and maintain uniform processes at every location across the company. In fact, the system worked so well that another company approached our client about licensing their system to manage their own terminals. However, the partner company had certain specific feature sets which they required before implementing the system at their own facilities.

The most significant feature request was an easier way to modify bills of lading after the fact, as well as tracking those modifications. The bill of lading contains a large assortment of data about the load: customer, service company, product, tare and gross weights, purchase order number, driver name, signature, etc. One strategy used in the terminal management system to eliminate data entry errors is to provide dedicated screens for different steps in the loading process. These dedicated screens only allow entering the specific data relevant to that step (entering order data, receiving a new truck, loading the truck, collecting the final weight and dispatching the truck), and a series of statuses ensures that only the trucks at a given step can be accessed on that screen.

While this structure is very effective at preventing errors, on the rare occasion that an error did occur, resolving the issue was a bit cumbersome. A user with administrative access would have to manually revert the statuses on the truck to edit the different fields. As the client’s business continued to grow, even a steady low error percentage inevitably grew to a larger administrative task, and for their partner, it was a non-starter. They needed a way to edit all the relevant details about a truck on a single page.

Solution

Making a single page form with all the relevant fields for a truck is trivial. However, the system provides numerous checks to make sure that the order matches the customer, the job matches the order, the product matches all these things, and so on. Additionally, the quantity for each draft (load event) needed to total up to match the net weight calculated from the gross and tare, and vice versa. Since every piece of data could be modified, every other piece of data needed to be checked in real-time to make sure things still added up. Additionally, there were a series of dependent select fields (drop-down menus), where the user’s choice in one menu would affect the available options in other menus.

The core terminal management system was built as a web application, running in the cloud, backed by a relational database, with the user interface rendered in the browser with HTML. Additional UI enhancements were implemented using JavaScript. However, the level of interactivity required for this page would have been an overly complex mess to implement. Instead, we opted to use Angular.

Angular is an open-source JavaScript UI framework built by Google and used by a wide range of organizations around the world. Angular allows you to define a scope, a set of JavaScript variables. You can then reference those scope variables in your page template, in functions you write to call on that page, and in event triggers. The variables in the scope are shared around the page, so any time the variable is updated, the references to it are automatically updated as well.

Weights are automatically recalculated based on user input.

We used these capabilities to automatically update the gross tare and net weights based on the total of the drafts, keeping the net weight matched to the sum of the drafts. We built a integration to allow Chosen.JS’s searchable select boxes to interact with Angular scope variables. Any time a value was updated in a drop-down menu (Customer, Order, Job, Product) we could automatically trigger updates elsewhere in the form. When a change in value caused the available options in another select box to be modified, we would pull an updated option list from the API via AJAX.

The entire truck loading process laid out on a single screen for easy editing.

One particularly challenging component was dealing with transient load sources. The system tracks which container is used to load each draft in the truck. That way, if there is a contamination or other quality issue with the material on that truck, the system can easily tell you where it loaded from, in order to locate and mitigate the source of the problem. However, trucks are often loaded directly from railcars, which by their nature are mobile. Every day, empty railcars are removed from the facility, and full ones arrive to replace them. The system provides a list of railcars, silos, and other containers that are available to load from and have the matching product for the truck. However, if you are editing a BOL from a truck that has already left, the current list of load sources may be different from the list at the time that truck was on site. And if you modify the arrival and departure timestamps for the truck, the list of available load sources will change again. We had to extend the load source API so that you could query based on timestamps and lookup which load sources were on-site during that window of time and contained the specific product at that time (because a container might be emptied of one product, and refilled with another). Any change to the truck’s arrival and departure times would trigger another query to this API, causing the list of available load sources to be updated in real-time.

Each draft (load event) is listed, along with quantity, timestamp, and load source (asset). All this data can be edited, and the system will handle the business logic seamlessly.

All of these changes are managed exclusively on the client-side, without modifying the database. Once the user is happy with their changes, they submit the edits to the system. A series of validation checks are run, to make sure the business rules are applied correctly, and the bill of lading is updated in the system. A new PDF is generated and stored in the cloud for future reference.

However, since this modified BOL is different from the document the driver signed, and was handed during dispatch, the modified BOL document does not bear the driver’s digital signature. Instead it contains a note indicating that the BOL has been modified, as well as an attached log, listing all the changes made to the document.

This BOL has been edited, so the driver’s signature is replaced with a note indicating the change.

The system stores the original BOL document, as well as every revised version, with the attached change log. Each version can be downloaded on demand from the application.

All revisions are kept for reference, allowing users to see the entire history of the BOL through each edit.

Result

This project was a huge time saver for the administrative support team tasked with handling these BOL modifications. Changes that were once a considerable headache could be handled in a matter of seconds. Because there were fewer opportunities for error, much of this work was able to be delegated back to the terminal operations team, which dramatically reduced turn around time, since the fix could be made by a manager who was physically on-site, rather than submitted to a queue with a host of other issues to be resolved by the support team, who would previously have to call the terminal and investigate the issue to determine exactly what the correct data would be.

The revision history showing previous versions, and listing the corrections, provided traceability in case of any questions down the road.

Additionally, the same single-page interface also allowed us to implement a “Manual BOL” process. If a facility loses Internet access, they cannot access the terminal management system, since it is hosted in the cloud. However, trucks still need to be loaded and processed. Delaying loads could cause well site operations to stop, which can be extremely costly for our client’s customers, and might even lead to canceled contracts. Thus, if a facility’s Internet access is down, they must revert to a paper BOL form, a copy of which is kept in a file at the terminal. Once Internet access is restored, the paper BOL can be scanned, and the relevant data is entered on the “Manual BOL” screen. This screen is basically the same form as the BOL editing interface, except a new bill of lading is created, rather than modifying an existing one.

Finally, this feature was a non-negotiable requirement for our client’s partner who licensed the system, and implementing this allowed this strategic partnership to move forward. This lead to deploying the client’s custom terminal management system to over 40 locations across the US and Canada, and opening an entirely new revenue stream for the business. It also strengthened the partnership with that client, leading to additional future projects.

The post Case Study: Bill of Lading Edit Interface using AngularJS for Logistics Company first appeared on Fulcrum Dynamic.]]>
889
Case Study: Billing Reports for Oil Field Logistics Provider https://fulcrumdynamic.com/case-study-billing-reports-for-oil-field-logistics-provider/ Mon, 21 Dec 2020 15:00:00 +0000 https://fulcrumdynamic.com/?p=902 We built a custom billing report system for an oil field logistics provider, to help them automatically generate detailed itemized invoice for their clients, and handle their complex fee agreements.

The post Case Study: Billing Reports for Oil Field Logistics Provider first appeared on Fulcrum Dynamic.]]>
Client

Our client is a market leader in oil field logistics and transload services.  They own and manage a nationwide network of transload terminals where they store and move millions of pounds of bulk sand, crude, and other materials to and from trucks, railcars, silos, and other containers.  Their services are a critical element in the energy supply chain in North America.

This client operates transload facilities, where they transfer products between trucks, railcars, and on-site storage containers. They specialize in transloading frac sand for the oil and gas industry, particularly in the Southwest, although they handle a variety of materials at locations all over the country.

One of the client’s transload terminals.

Problem

The railcars, trucks, and materials they handle do not belong to the logistics service provider, but rather belong to their clients, who either produce and sell materials or consume them. Either way, they need to move large quantities of bulk materials using multiple modes of transport, which our client facilitates.

One of the logistics provider’s transload facilities. Sand is brought in via railcar and unloaded with the mobile conveyor in the center of the image. Trucks can be loaded directly from the railcar with this device, but product may also be unloaded from railcars and stored in containers like the ones shown on the right.

The client’s business is not based on the products they handle, but on the handling itself. As such, they bill their clients based on the weight transported, with rates varying based on location, customer, mode of transport, material type, container type (silo, hopper, warehouse, etc.), and various other factors. Some of these rates are set on a sliding scale based on volume. Some include minimum volumes that must be achieved within a certain time frame.

They also bill demurrage fees for railcars stored at their facilities, which vary based on the type of car. Most of these are actually charged by the railroad and passed through to the client. They typically have a certain number of free days, with a charge daily for each day after that threshold.

Many of our client’s customers are multi-billion dollar companies, and their requirements can vary greatly. As such, each contract is negotiated separately and will have different terms.

Because of all this, calculating exactly what each customer owes them at the end of the month is an extremely complex task. Data on every truck to visit each facility was being exported into a spreadsheet, and the accounting department would add all the various calculations, manually entering the more complex variations. But as the business grew, this became too time-consuming, and they simply could not keep up.

Solution

We built them a system where they could enter all the complex details of the billing agreement for each contract. Then we built a report generation system where they could grab all the transactions for each customer, have the fees automatically calculated, and quickly review them. Once reviewed, they would click a button and all the transactions would be exported to their accounting software, and an invoice would be generated. Later, as the client’s business grew, we modified the export to send the transactions to an enterprise ERP system instead.

Result

This system allowed them to recoup lost revenue that would have been missed by the manual process, and easily generate accurate invoices for all their clients with only a couple of accountants, instead of an army of analysts, which they would need at this point.

The post Case Study: Billing Reports for Oil Field Logistics Provider first appeared on Fulcrum Dynamic.]]>
902
Case Study: Industrial Automation (SCADA) and Web Application Integration for a Transloading and Logistics Provider https://fulcrumdynamic.com/case-study-industrial-automation-scada-and-web-application-integration-for-a-transloading-and-logistics-provider/ Mon, 14 Dec 2020 15:00:00 +0000 https://fulcrumdynamic.com/?p=887 Our client, a transloading and logistics provider, needed to exchange data between their custom terminal management application and and automated silo installation, and they needed a solution fast. Learn how we delivered on both counts.

The post Case Study: Industrial Automation (SCADA) and Web Application Integration for a Transloading and Logistics Provider first appeared on Fulcrum Dynamic.]]>
Client

Our client is a market leader in oil field logistics and transload services.  They own and manage a nationwide network of transload terminals where they store and move millions of pounds of bulk sand, crude, and other materials to and from trucks, railcars, silos, and other containers.  Their services are a critical element in the energy supply chain in North America.

One of the client’s transload terminals.

Problem

This transload company contracted with one of their clients to install 4 200 ft silos to store frac sand and more quickly process inbound and outbound loads from one of their facilities. The silo installation included a pit and bucket elevator system for unloading railcars, truck scales and gate valves for loading trucks, and an automation system to control all this equipment remotely from an onsite scale house.

The top of a silo, taken from an adjacent silo. This is part of a four pack. These silos are actually at a different location, but are built to the same specifications, and are nearly identical in appearance.

The facility is owned operated by the transload provider, but the silos would be owned by the client and used exclusively for their product. The silos were constructed because this was one of the busiest terminals in the region, with an extremely high volume of trucks.

The facility is located in a small town on one of its major thoroughfares, and the long line of trucks waiting to be loaded had caused traffic blockage for the entire town, much to the annoyance of local residents.

The silos were designed to be managed using an piece of industrial automation software called a SCADA (short for “supervisory control and data acquisition”). This significant investment in mechanical equipment and software promised to increase throughput for the terminal. However, since the SCADA was provided by their client, the transload company had no control over the software, and limited access to its data.

The silos have a bucket conveyor system which carries product from ground-level, up to the top of the installations and deposits it in the appropriate silo with these conveyor legs.

Our client has a custom terminal management application, which we helped them build, and which manages inventory, bills of lading, transload billing, and all other aspects of on-site terminal operations. It also feeds data to report systems used by management and customers to make strategic decisions.

A view of the silo installation from below. The silos are just under 200 ft tall.

Any loads into and out of the silos needed to be tracked in the terminal management application in order to maintain accurate inventory, and to generate correct bills of lading. Additionally, the terminal management application needed to feed data into the SCADA system about the trucks being loaded through the silos, to ensure the correct product was loaded on each truck.

Solution

The SCADA system implemented at this site had limited integration capabilities. However, it was configured to write out a log of trucks unloaded and railcars loaded to a local MySQL database, in two separate tables. The system also had the ability to consume an XML feed of incoming trucks.

We had previously built the client a custom microservice service in Node.JS. It ran on an appliance installed at each of their facilities, and collected data from truck scales, interfacing with the terminal management application in the cloud through a REST API.

We modified this service, adding a microservice to provide the XML feed the SCADA required, pulling data from the terminal management application. We also added a service which would repeatedly poll the SCADA database for new and updated records in the relevant tables. Any new loads would be translated to the format required by the terminal management system’s REST API, and forwarded to that system, in as close to real time as possible.

Drafts loaded using the silo automation system are automatically imported into PropLogistics, and show up on the loading screen here.

Result

This project had a very tight deadline but we were able to execute quickly and deploy our solution within just a few days. Our client’s operators on-site were able to run the automation system and load trucks far more quickly, increasing throughput while decreasing traffic.

The automation system received the truck and product data it needed to correctly assign products. The operations team was able to generate bills of lading through the terminal management application, utilizing all the optimizations already present in that system.

Since all load and unload events occurring at the silos were automatically logged in the terminal management application, they were able to track inventory without manual double entry, saving time and avoiding errors.

The transload provider was able to exceed expectations for their client, and the terminal became the most productive site in the client’s entire logistics network.

The post Case Study: Industrial Automation (SCADA) and Web Application Integration for a Transloading and Logistics Provider first appeared on Fulcrum Dynamic.]]>
887
Case Study: LAMP Stack Integration with Kashoo Simple Cloud Accounting https://fulcrumdynamic.com/project-profile-kashoo-php/ Tue, 30 Apr 2013 21:19:48 +0000 http://fulcrumdynamic.com/?p=717 As your business grows, so do your needs. Kashoo enables you to achieve the customization you need with detailed reporting, a simple user interface, and all the functionality of an accountant without the complications from […]

The post Case Study: LAMP Stack Integration with Kashoo Simple Cloud Accounting first appeared on Fulcrum Dynamic.]]>
As your business grows, so do your needs. Kashoo enables you to achieve the customization you need with detailed reporting, a simple user interface, and all the functionality of an accountant without the complications from the actual accounting process. Take it as a way to simplify your accounting needs.

Client

Our client is a Real Estate Company based in Austin, Texas.  They have built a successful business around creative real estate.  They provide a number of services to help their investor agents close deals more effectively, from short sale processing, to mentoring.  They pride themselves on the flexibility they can offer to their agents, unlike more traditional real estate firms.

Problem

Our client was already using Kashoo but was manually copying data from one system to the other, wasting a lot of time in the process.  We provided the tools to let them automate imports and exports between the two systems. They had been using an extensive custom internal back-office application written on the LAMP stack which needed to be integrated with Kashoo Simple Cloud Accounting.  LAMP stands for Linux, Apache, MySQL, and PHP. Together, they provide a proven set of software for delivering high-performance web applications, and Kashoo enables you to achieve the customization you need with detailed reporting, a simple user interface, and all the functionality of an accountant without the complications from the actual accounting process. Take it as a way to simplify your accounting needs. They were hoping to transition from something complicated into something simpler to handle their accounting needs.

Solution

We provided a library to make it easy to talk to the Kashoo API.  This allowed them to build functionality into their custom back-office management system to send and receive sales data between their accounting system (Kashoo), and the back-office system.

We want to thank our clients for their generosity in giving us permission to share the scripts for free on GitHub, we don’t normally take the code you paid for and give it away to everyone else for free.  You can take a look and try to modify them for your needs here: https://github.com/eimajenthat/kashoo-php

Results

This integration was a first step in simplifying what was originally a complicated system with a lot of manual data entry. It has enabled their team to work more efficiently on their tasks and has gotten rid of the worry of committing accounting errors.

The post Case Study: LAMP Stack Integration with Kashoo Simple Cloud Accounting first appeared on Fulcrum Dynamic.]]>
717