A method and system for synchronizing a main database of a server and a local database of a handheld device. A user can use an application residing in the handheld device to make transactions in the local database. During a synchronization operation, the handheld device and server are coupled. The system then determines whether the application should be updated and, if so, causes the server to provide an update. The system also causes the handheld device to provide to the server information related to the transactions made by the user to the local database. The system causes the server to perform transactions on the main database based on the transaction information. The system also causes the server to extract data from the main database. The server can then provide at least some of the extracted data to the handheld device to update the local database.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A method, comprising: coupling a handheld device to a server, the server comprising a first database and the handheld device comprising a second database, the handheld device also comprising an application that allows a user to access the second database; determining whether the application needs to be updated, wherein the determining comprises an act of comparing a version number of the application with a version number received from the server; causing the server to provide to the handheld device metadata for updating the application if the application version number and the version number received from the server do not compare equally; causing the handheld device to record transactions performed on the second database by a user; causing the handheld device to provide to the server transaction information, wherein the transaction information is related to the recorded transactions; causing the server to perform a transaction on the first database based on the transaction information; causing the server to extract data from the first database to be used to update the second database; and causing the server to provide to the handheld device at least a portion of the extracted data.
2. The method of claim 1 , wherein the application update metadata comprises definitions for screens, views, and/or fields for the application that are used to access the second database.
3. The method of claim 1 , wherein coupling the handheld device to the server comprises coupling the handheld device to a companion device that can be coupled to the server.
4. The method of claim 1 , wherein a synchronization engine is configured to cause the server to provide to the handheld device at least one of the application update metadata or the extracted data.
5. The method of claim 4 , wherein the synchronization engine resides in the server.
6. The method of claim 4 , wherein the synchronization engine resides in a companion device that is coupled to the server and the handheld device.
7. The method of claim 4 , wherein synchronization engine resides in the handheld device.
8. The method of claim 1 , wherein a synchronization manager is configured to cause the handheld device to provide to the server the transaction information.
9. The method of claim 8 , wherein the synchronization manager resides in the handheld device.
10. The method of claim 8 , wherein the synchronization manager resides in a companion device that is coupled to the server and the handheld device.
11. The method of claim 1 further comprising: determining whether handheld device has enough free memory to store the handheld device application update metadata; sending a request to download the metadata handheld device application update metadata in response to determining that the handheld device has enough free memory to store the handheld device application update metadata.
12. A system, comprising: means for coupling a handheld device to a server, the server comprising a first database and the handheld device comprising a second database, the handheld device also comprising an application to allow a user to access the second database; determining whether the application needs to be updated, wherein the determining comprises an act of comparing a version number of the application with a version number received from the server; means for causing the server to provide to the handheld device application update metadata if the application version number and the version number received from the server do not compare equally; means for causing the handheld device to record transactions performed on the second database by a user; means for causing the handheld device to provide to the server transaction information, the transaction information describing at least in part the recorded transactions; means for causing the server to perform a transaction on the first database as described in the transaction information; means for causing the server to extract data from the first database to be used to update the second database; and means for causing the server to provide to the handheld device at least a portion of the extracted data.
13. The system of claim 12 , wherein the application update metadata comprises definitions for screens, views, and/or fields for the application that are used to access the second database.
14. The system of claim 12 , wherein the means for coupling the handheld device to the server comprises a companion device connected to the server and the handheld device.
15. The system of claim 12 further comprising a synchronization engine that includes the means for causing the server to provide to the handheld device the application update and the means for causing the server to provide to the handheld device the extracted data.
16. The system of claim 15 , wherein the synchronization engine resides in the server.
17. The system of claim 15 , wherein the synchronization engine resides in a companion device that is coupled to the server and the handheld device.
18. The system of claim 15 , wherein synchronization engine resides in the handheld device.
19. The system of claim 15 , wherein the synchronization engine also includes the means for causing the server to extract data.
20. The system of claim 15 , wherein the synchronization engine also includes the means for causing the server to perform a transaction.
21. The system of claim 12 , further comprising a synchronization manager that includes the means for causing the handheld device to provide to the server the transaction information.
22. The system of claim 21 , wherein the synchronization manager resides in the handheld device.
23. The system of claim 21 , wherein the synchronization manager resides in a companion device that is coupled to the server and the handheld device.
24. The system of claim 21 , wherein the synchronization manager also includes the means for causing the handheld device to record transactions.
25. The system of claim 21 , wherein synchronization manager also includes the means for causing the handheld device to record transactions.
26. The system of claim 12 further comprising: means for determining whether handheld device has enough free memory to store the metadata; means for sending a request to download the metadata in response to determining that the handheld device has enough free memory to store the metadata.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
February 25, 2002
July 20, 2010
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.