IP Library Granted Patent US 7,716,374
Granted Patent B2
US 7,716,374 · App. 09/977,686 · Granted May 11, 2010

Run-time engine implemented on a computing device allowing synchronization of records during application execution

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,716,374
App. No.
09/977,686
Granted
May 11, 2010
Kind
B2
Abstract

A first database implemented on a remote device such as a handheld computer may be reconciled with a corresponding second database implemented on a host computer during execution of an application program on the handheld device. In addition, the application program may be executed according to program instructions stored in an application program file located in the remote device. The databases may be reconciled by first commencing execution of the application program. Then, during the course of program execution, a synchronization instruction located in said application program file is retrieved. The synchronization instruction is executed by establishing a communications link between the handheld computer and the host computer. Subsequently, any differences between the first database and the second database are reconciled. Furthermore, embodiments of the invention contemplate that in addition to reconciling all of the databases located on the handheld and host computers, less than all of the databases may be reconciled to reduce the amount of time required to execute the reconciliation process. In addition, after reconciliation control may be returned to the calling application program, or to another application, as determined by the application designer.

Claims (59)

1. A method of reconciling data between a host device wirelessly connected to a personal data assistant, comprising:

commencing execution of a first application on said personal data assistant;

executing a synchronization instruction, said synchronization instruction comprising at least one parameter including a control parameter identifying a different second application to perform a next instruction after executing said synchronization instruction;

launching a first synchronization process on said personal data assistant in response to said executing said synchronization instruction from said first application on said personal data assistant;

launching a second synchronization process on said host device in response to said executing said synchronization instruction from said first application on said personal data assistant; and

synchronizing data, over a data connection, stored in said personal data assistant with data stored in said host device by said first synchronization process and said second synchronization process.

2. The method of claim 1 , further comprising:

establishing a TCP/IP communication link between said host device and said personal data assistant for synchronizing said data.

3. The method of claim 1 , wherein:

said at least one parameter identifies data for synchronization.

4. The method of claim 3 , wherein:

said identified data includes data stored in at least one database in said personal data assistant that is synchronized with data stored in an associated database in said host device.

5. The method of claim 1 , wherein said step of executing a synchronization instruction further comprises:

extracting said at least one parameter from said synchronization instruction; and

storing said at least one parameter in memory in said personal data assistant.

6. The method of claim 5 , wherein said executing a synchronization instruction further comprises:

retrieving said stored at least one parameter from said memory; and

executing from said application said synchronization instruction with said retrieved at least one parameter.

7. The method of claim 1 , wherein:

said executing a synchronization instruction from said first application further comprises executing said synchronization instruction in response to an event.

8. The method of claim 7 , wherein:

said event comprises selecting a button or icon displayed by said first application on said personal data assistant.

9. The method of claim 7 , wherein:

said event comprises selecting a menu item displayed by said first application on said personal data assistant.

10. The method of claim 7 , wherein:

said event comprises one of selecting a form and closing a form displayed on said personal data assistant.

11. A system comprising:

a personal data assistant, comprising at least one first database, to execute a first application and a synchronization instruction, and to launch a first synchronization process on said personal data assistant in response said synchronization instruction; and

a host device to connect to said personal data assistant over a data connection, to include at least one second database, and to launch a second synchronization process on said host device in response to said synchronization instruction, with synchronization between said personal data assistant and said host device being performed by said first synchronization process and said second synchronization process;

wherein said synchronization instruction comprises at least one parameter including a control parameter identifying a different second application to perform a next instruction after executing said synchronization instruction.

12. The system of claim 11 , wherein said personal data assistant further comprises:

a runtime engine executing said application; and

a memory storing a program file received from said host device, said program file including said synchronization instruction executed by said personal data assistant.

13. The system of claim 12 , wherein:

said runtime engine is configured to retrieve said synchronization instruction from said program file and execute said synchronization instruction.

14. The system of claim 13 , wherein:

a first synchronization process is launched on said personal data assistant and a second synchronization process is launched on said host device for synchronizing in response to said execution of said synchronization instruction.

15. The system of claim 13 , wherein:

said host device further comprises an integrated design environment configured to generate said first application and said program file, said first application and said program file being downloaded to said personal data assistant from said host device through a communication link.

16. A data synchronization system comprising:

a host computer to include an integrated design environment, a first plurality of databases, and at least one first application, wherein said host computer is configured to generate said at least one first application and a first program file including instructions executed with said first application;

a personal data assistant to connect to said host computer through a data connection, said personal data assistant comprising a runtime engine to execute said first application and a second plurality of databases, and to launch a first synchronization process on said personal data assistant in response said synchronization instruction; and

a host device to launch a second synchronization process in response to said first synchronization process, synchronization between said personal data assistant and said host device being performed by said first synchronization process and said second synchronization process;

wherein said personal data assistant is configured to receive said at least one first application and first program file from said host computer, and said runtime engine is configured to initiate said at least one first application and said synchronization instruction in said first program file, said synchronization instruction comprises at least one parameter including a control parameter identifying a different second application to perform a next instruction after executing said synchronization instruction.

17. A method of synchronizing data between a personal data assistant and a remote computer, comprising:

selecting from said personal data assistant which files on said personal data assistant to synchronize with said remote computer;

establishing data communications between said personal data assistant and said remote computer;

running a first application on said personal data assistant, said first application comprising a synchronization instruction comprising at least one parameter including a control parameter identifying a different second application to perform a next instruction after executing said synchronization instruction;

launching a first synchronization process on said personal data assistant in response to said synchronization instruction; and

launching a second synchronization process on said host device in response to said synchronization instruction;

wherein said synchronization between said personal data assistant and said host device being performed by said first synchronization process and said second synchronization process.

18. The method of synchronizing data between a personal data assistant and a remote computer according to claim 17 , wherein:

said synchronizing is performed over a wireless connection.

19. The method of synchronizing data between a personal data assistant and a remote computer according to claim 17 , wherein:

said synchronizing synchronizes a first database on said personal data assistant with a second database on said remote computer.

20. The method of synchronizing data between a personal data assistant and a remote computer according to claim 17 , further comprising:

selecting a button or icon displayed by an application on said personal data assistant.

21. The method of synchronizing data between a personal data assistant and a remote computer according to claim 17 , further comprising:

selecting a menu item displayed by an application on said personal data assistant.

Assignments (13)
SECURITY INTEREST Recorded Nov 16, 2018
From: COMTECH TELECOMMUNICATIONS CORP.; COMTECH EF DATA CORP.; COMTECH XICOM TECHNOLOGY, INC.; COMTECH SYSTEMS, INC.; COMTECH PST CORP.; COMTECH MOBILE DATACOM CORPORATION; ANGELS ACQUISITION CORP.; ARMER COMMUNICATIONS ENGINEERING SERVICES, INC.; COMTECH AEROASTRO, INC.; COMTECH ANTENNA SYSTEMS, INC.; COMTECH COMMUNICATIONS CORP.; COMTECH COMSTREAM, INC.; COMTECH SYSTEMS INTERNATIONAL, INC.; COMTECH TOLT TECHNOLOGIES, INC.; TIERNAN RADYNE COMSTREAM, INC.; COMTECH CPI ELECTRON DEVICES CORP.; COMTECH CPI MICROWAVE CORP.; TELECOMMUNICATION SYSTEMS, INC.; NETWORKS IN MOTION, INC.; SOLVERN INNOVATIONS, INC.; MICRODATA, LLC; MICRODATA GIS, INC.; MAPLE ACQUISITION LLC; NEXTGEN COMMUNICATIONS, INC., A CORPORATION OF MARYLAND; NEXTGEN COMMUNICATIONS, INC., A CORPORATION OF VIRGINIA; OLIVE ACQUISITION LLC
To: CITIBANK, N.A.
Reel/Frame 048104/0080 →
RELEASE OF SECURITY INTEREST Recorded Mar 3, 2016
From: SILICON VALLEY BANK
To: TELECOMMUNICATION SYSTEMS, INC.; LONGHORN ACQUISITION, LLC; SOLVEM INNOVATIONS, INC.; QUASAR ACQUISITION, LLC; NETWORKS IN MOTION, INC.
Reel/Frame 037994/0113 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 10, 2015
From: ROUSSILLON LLC
To: ZHIGU HOLDINGS LIMITED
Reel/Frame 036063/0361 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 1, 2014
From: TELECOMMUNICATION SYSTEMS, INC.
To: ROUSSILLON LLC
Reel/Frame 032577/0656 →
NUNC PRO TUNC ASSIGNMENT Recorded Mar 8, 2014
From: TELECOMMUNICATION SYSTEMS CORPORATION OF MARYLAND
To: TELECOMMUNICATION SYSTEMS, INC.
Reel/Frame 032386/0032 →
CONFIRMATORY ASSIGNMENT Recorded Mar 8, 2014
From: MASON, LARRY D.
To: AETHER SYSTEMS, INC.
Reel/Frame 032415/0379 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY IS INCORRECT PREVIOUSLY RECORDED ON REEL 016755 FRAME 0303. ASSIGNOR(S) HEREBY CONFIRMS THE CONVEYING PARTY SHOULD BE: AETHER SYSTEMS, INC.. Recorded Dec 23, 2013
From: AETHER SYSTEMS, INC.
To: TSYS ACQUISITION CORP.
Reel/Frame 031868/0590 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY IS INCORRECT PREVIOUSLY RECORDED ON REEL 017178 FRAME 0498. ASSIGNOR(S) HEREBY CONFIRMS THE CONVEYING PARTY SHOULD BE: TSYS ACQUISITION CORP.. Recorded Dec 23, 2013
From: TSYS ACQUISITION CORP.
To: TELECOMMUNICATION SYSTEMS CORPORATION OF MARYLAND
Reel/Frame 031868/0668 →
SECURITY AGREEMENT Recorded Jan 29, 2010
From: TELECOMMUNICATION SYSTEMS, INC.; LONGHORN ACQUISITION, LLC; SOLVERN INNOVATIONS, INC.; QUASAR ACQUISITION, LLC; NETWORKS IN MOTION, INC.
To: SILICON VALLEY BANK, AGENT
Reel/Frame 023870/0484 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 5, 2006
From: TELECOMMUNICATION SYSTEMS CORPORATION OF MARYLAND
To: TELECOMMUNICATION SYSTEMS, INC.
Reel/Frame 018350/0155 →
CHANGE OF NAME Recorded Nov 1, 2005
From: TYSYS ACQUISITION CORP.
To: TELECOMMUNICATION SYSTEMS CORPORATION OF MARYLAND
Reel/Frame 017178/0498 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 7, 2005
From: NARDONE, JOSEPH; MASON, LARRY
To: TSYS ACQUISITION CORP.
Reel/Frame 016755/0303 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 17, 2002
From: NARDONE, JOSEPH R.; MASON, LARRY D.
To: AETHER SYSTEMS, INC.
Reel/Frame 012479/0889 →