Systems and methods for intermittent synchronizing of customer relationship management local application clients

Inventors

Vallabhaneni, GeethaRodriguez, III, FernandoSparks, Bradford

Assignees

Luminix Inc

Interested in licensing this patent?

MTEC can help explore whether this patent might be available for licensing for your application.

Publication Number

US-12608399-B2

Patent

Publication Date

2026-04-21

Expiration Date


Abstract

Methods and systems for synchronizing a Customer Relationship Management (“CRM”) data system and its mobile application device version. The methods and systems enable both read and write access from the mobile device whether a network connection to the SaaS provider is available or not. They allow for effective local usage and intermittent synching without downloading large numbers of unnecessary records at each synch. The method and systems create a local mobile application device database version to track portions or all of the SaaS provider database. The methods and systems allow the mobile application to be functional while offline between synchs, including with incomplete data and metadata such as a database schema change. In one embodiment, multiple local database tables are used to represent a single SaaS CRM table to facilitate synchronization, and a status indicator is used to convey status on the mobile device application to the mobile user. Administrator settings enable the disclosed synching invention.

Core Innovation

The invention synchronizes a local client application with its corresponding server application version for online/offline operation by using intermittent synchronization over a network and transmitting sets of directives. The local client application receives directives comprising depth 0 directives and depth 1 directives, translates the directives into server executable queries, and sends the translated queries to the server application to download specified data for one or more software objects comprising database records.

A core aspect is the relationship-based “Sync Generation” using depth-labeled directives and dependency chaining, where each record associated with a depth 1 directive is checked to see if it has a dependent record associated with a depth 0 directive. If a depth 1 record does not have a dependent depth 0 record, the record is excluded from server executable queries and the directive is run only locally to calculate a number of segmented directives.

The invention also includes translating additional directive depth, such as depth 2 directives, into server executable queries and using query chunking to avoid server timeouts. It performs schema-driven local schema adaptation by detecting schema changes and applying local schema changes, and it computes synchronization windows using a server time-based timestamp, including filtering based on modified and created times tied to a previous synchronization generation.

Claims Coverage

The independently claimed subject matter covers at least three independent methods of synchronizing a local client application with a corresponding server application version, using depth-labeled directives translated to server executable queries, dependency-based segmentation and exclusion for depth 1 records, and downloading specified data using SQL communication and protocols. Each independent method includes reception of application settings via user input to determine when to carry out the synchronization remainder.

Depth 0 and depth 1 directive translation with local exclusion-based segmentation

Receiving depth 0 directives and depth 1 directives, translating each depth 0 directive and each depth 1 directive into server executable queries, wherein each record associated with each depth 1 directive is checked to see if it has a dependent record associated with a depth 0 directive, and if not, the record is excluded from the server executable queries and the directive is run only locally to calculate a number of segmented directives.

Sending depth 0 and depth 1 queries for server download of specified software object data

Sending the queries corresponding to each depth 0 directive and each depth 1 directive to the server application, in order to download specified data from the server application corresponding to one or more software objects comprising database records from the server application to the local client application, and downloading the specified data using SQL communication, queries, and protocols.

Server-side receiving of prior translated depth directives with second-time query reception

Receiving at the server application, via a network and a means for receiving user input, application settings determining when to carry out the remainder of the method; receiving server executable queries previously translated from one or more depth 0 or depth 1 directives; receiving the queries corresponding to the depth 0 directives a second time; and receiving the queries corresponding to each depth 1 directive a second time, wherein each depth 1 record lacking a dependent depth 0 association is excluded from server executable queries and handled locally to calculate segmented directives.

Internet-delivered depth 0 directive synchronization with dependency-based local execution

Receiving a set of directives comprising depth 0 directives from a server application over a network comprising the Internet; translating each depth 0 directive into a server-executable query, wherein each record associated with each depth 1 directive is checked to see if it has a dependent record associated a depth 0 directive, and if not, the record is excluded from the server executable queries and the directive is run locally to calculate a number of segmented directives; and sending the server executable queries corresponding to each depth 0 directive to the server application to download specified data to the local client application, with the specified data sent over the Internet and downloaded using SQL communication, queries, and protocols.

Across the independent claims, synchronization is performed using depth 0 and depth 1 directives that are translated into server executable queries, with depth 1 records conditionally excluded when they lack dependent depth 0 associations so the directive can run locally to calculate segmented directives. The client downloads specified data for software objects comprising database records using SQL communication and protocols, with one independent claim further specifying server-side reception and second-time handling of translated queries, and another specifying Internet-based delivery of depth 0 directives.

Stated Advantages

Supports synchronization by downloading specified data from the server application corresponding to one or more software objects comprising database records to a local client application.

Enables relationship-based segmentation by checking depth 1 records for dependent depth 0 associations and excluding non-dependent records from server executable queries.

Allows directive handling to run locally when depth 1 records lack dependent depth 0 records to calculate a number of segmented directives.

Documented Applications

Synchronization of a local client application with its corresponding server application version for online/offline operation using intermittent synchronization over a network.

Downloading specified data from a CRM-style server application to a mobile or local client application for software objects comprising database records, using SQL communication, queries, and protocols.

JOIN OUR MAILING LIST

Stay Connected with MTEC

Keep up with active and upcoming solicitations, MTEC news and other valuable information.