For both on-premises and cloud deployments, Flowfinity uses a Microsoft SQL Server backend for its robust high-performance data management capabilities. All Flowfinity data is stored in a single database providing both transactional integrity and centralized backup capability for the whole system.
The SQL Server database runs in the background for cloud users, however on-premises installations of Flowfinity provide administrators with full control over their databases including security, availability and backup configurations. For on-premise installations, migrations between servers or even data centers are possible because of the single database architecture.
Access or edit data directly in Flowfinity's web client
Query the SQL database directly to access the same data
Flowfinity was designed so that business analysts and other non-IT professionals can configure business apps using the point-and-click Flowfinity App Editor. Users who build apps in Flowfinity do not need to have knowledge of SQL Server programming or administration. All of the necessary data structures are created and maintained automatically by Flowfinity to reflect any changes made in the Flowfinity App Editor. Normalized data models are automatically exposed for simplified querying and reporting with direct database access (available for on-premises and VPN-enabled private cloud deployments).
Flowfinity is optimized for high performance with multi-terabyte databases.
Flowfinity provides a rich set of programmatically accessible interfaces for integration with external systems, as well as integration with custom logic that allows existing app functionality to be extended with server code if needed.
There are two types of integration interfaces available: batch interfaces and transactional interfaces. Batch interfaces allow reading and writing records in batches and are typically used for non-time-sensitive data exchange with external systems. Transactional interfaces work on an event-driven basis by processing record updates as they become available.
The following batch integration interfaces are available:
- HTTP-based Import Automation for importing data in CSV format, including import merge functionality
Enable import automation for multiple apps from a web-based interface
- HTTP-based Export Automation for exporting records data in CSV format or in PDF format
- Web Services-based Query API for retrieving records with custom query parameters, including nested records and binary data such as pictures, signatures, sketches and attachments
- Direct query capability with SQL Server views for retrieving data including nested records and binary data such as pictures (available only with on-premises installations and with VPN-enabled private cloud systems). This capability works with any database-enabled tools such as Microsoft Visual Studio, reporting tools, Microsoft Excel, and others. Enterprises with dedicated data warehousing systems can use SQL Server ETL processes to offload data collected with mobile devices into their data warehouses.
Transactional integration capabilities are provided using Flowfinity's Integration Interface feature, including:
- Execute API for executing transactions in Flowfinity databases. This allows operations in Flowfinity apps to be invoked programmatically.
Invoke a Flowfinity Actions operation from custom code
- Callout API for receiving Web Services invocations every time a transaction is executed in the Flowfinity database (e.g. upon receipt of a form submission from a mobile device)
- GetTransactions API allowing transaction log scanning for incremental data synchronization
Flowfinity Integration Interface is based on Web Services SOAP technology which integrates well into most modern development languages and environments. For example, Microsoft Visual Studio provides easy-to-use Web Services wizards, and because Flowfinity Integration Interface is strongly typed, objects created with the Flowfinity App Editor are fully supported with IntelliSense and data type validation inside of Visual Studio.
Create a Service Reference with Flowfinity Integration Interface
For example, a typical requirement for our customers is to feed reference data lists from their systems of record, such as ERP or CRM systems, into Flowfinity to make it available for both mobile and desktop users for lookups and informational purposes. This is often accomplished using Flowfinity's Import Merge functionality, where reference data is exported periodically from the source systems into CSV files, and these CSV files are uploaded to Flowfinity using the Import Automation interface.
The intelligent Import Merge function analyzes the newly uploaded data and identifies those records that were added, modified or deleted since the last update of the Flowfinity database. Only those records that need modification are altered by the Import Merge process. This makes it possible to efficiently synchronize incremental changes in multi-million record datasets.This process makes offline data synchronization very efficient for devices because only the records that were actually modified will be sent to mobile devices for updating on-device storage for offline use.
Flowfinity has the power to integrate with the rich ecosystem of third-party mobile device applications using deep linking. With deep linking, screen control and data parameters can be passed back and forth between Flowfinity and other apps running on the same device.
For example, a user can select a location in a mapping application to add a new data point and automatically open a data entry form in Flowfinity, with location data from the mapping application already prefilled in the form. Upon completing data entry in Flowfinity, the user is returned back to the mapping application.
Use Flowfinity and other third party apps such as
mapping software seamlessly on mobile devices through deep linking
Similarly, external applications can be launched on devices from Flowfinity. Relevant data can be passed in both directions between apps. Flowfinity also supports deep linking for desktop users using the web client.
Launch external applications from Flowfinity with deep linking
Deep linking is often used to allow quick navigation from email notifications back to a relevant record in Flowfinity Actions.
Include deep links in automated email notifications to take the user
directly to the relevant record or action with one click
Deep links in Flowfinity allow you to access filtered record lists, create new records in specific forms, or perform operations on specific records that are already present in the system.
Deep linking is also available for internal use within Flowfinity for integrating between apps. This allows users to navigate quickly from one Flowfinity app to another. For example, a view of related records can be pulled up in the detail app from the master app, in a traditional master-detail relationship.