IP Library Granted Patent US 8,793,709
Granted Patent B2
US 8,793,709 · App. 12/275,144 · Granted Jul 29, 2014

Dynamic data coordination between multiple applications

Inventor: Matthew Bishop (North Vancouver, CA)
Assignee: SAP France S.A.
G06F9/542G06F9/543G06F2209/545
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 8,793,709
App. No.
12/275,144
Granted
Jul 29, 2014
Kind
B2
Abstract

A computer readable storage medium includes executable instructions to receive input from a user at a first application. The executable instructions include instructions to route the input to a client module, route the input from the client module to a broadcast module and route the input from the broadcast module to a second application. The executable instructions further include instructions to display the input in a first user interface panel associated with the first application and simultaneously display in a second user interface panel associated with the second application information derived from the input.

Claims (41)

1. A method for implementation by one or more data processors forming part of at least one computing system, the method comprising:

receiving, at a client module implemented by at least one computing system from at least one application, a subscription request to data entries from a user;

transmitting, by the client module to a client browser module being implemented by at least one computing system, a fetch entry command to retrieve entry values stored for the user;

receiving, by the client module from the client browser module, the entry values stored for the user;

sending, by the client module to the at least one application, the entry values received from the browser module, via a notification message;

sending, by the client module to a broadcast module being implemented by at least one computing system, a subscription request message requesting subscription to entry values corresponding to the user, via a first notification message;

receiving, by the client module from the broadcast module, the entry values corresponding to the user, via a second notification message;

determining, by the client module, that the entry values received from the broadcast module differ from the entry values stored in the client browser module; and

issuing, by the client module, a command to the client browser module to store new entry values for the entry values and sending, by the client module, the new entry values to all applications that have requested subscription to the entry values, via a subscription message.

2. A method as in claim 1 , wherein the client modules stores metadata characterizing a user comprising one or more data entry fields and corresponding values.

3. A method as in claim 1 , wherein the client browser module stores input received from the user at the at least one application.

4. A method as in claim 1 , wherein the broadcast module stores metadata characterizing a set of users comprising one or more data entry fields and corresponding values.

5. A method as in claim 1 , wherein the application receives input from the user, the application routes the input to the client module, the input is displayed in a first user interface panel associated with the application via the client browser, the client module routes the input to the broadcast module, the broadcast modules routes the input received from the client module to every subscribing application, and the client browser simultaneously displays, with the first user interface panel, at least one other interface panel corresponding to at least one other subscribing application that displays information derived from the input.

6. A non-transitory computer readable storage medium comprising executable instructions to cause at least one data processor forming part of at least one computing system to perform operations comprising:

receiving, at a client module implemented by at least one computing system from at least one application, a subscription request to data entries from a user;

transmitting, by the client module to a client browser module being implemented by at least one computing system, a fetch entry command to retrieve entry values stored for the user;

receiving, by the client module from the client browser module, the entry values stored for the user;

sending, by the client module to the at least one application, the entry values received from the browser module, via a notification message;

sending, by the client module to a broadcast module being implemented by at least one computing system, a subscription request message requesting subscription to entry values corresponding to the user, via a first notification message;

receiving, by the client module from the broadcast module, the entry values corresponding to the user, via a second notification message;

determining, by the client module, that the entry values received from the broadcast module differ from the entry values stored in the client browser module; and

issuing, by the client module, a command to the client browser module to store new entry values for the entry values and sending, by the client module, the new entry values to all applications that have requested subscription to the entry values, via a subscription message.

7. A non-transitory computer readable storage medium as in claim 6 , wherein the client modules stores metadata characterizing a user comprising one or more data entry fields and corresponding values.

8. A non-transitory computer readable storage medium as in claim 6 , wherein the client browser module stores input received from the user at the at least one application.

9. A non-transitory computer readable storage medium as in claim 6 , wherein the broadcast module stores metadata characterizing a set of users comprising one or more data entry fields and corresponding values.

10. A non-transitory computer readable storage medium as in claim 6 , wherein the application receives input from the user, the application routes the input to the client module, the input is displayed in a first user interface panel associated with the application via the client browser, the client module routes the input to the broadcast module, the broadcast modules routes the input received from the client module to every subscribing application, and the client browser simultaneously displays, with the first user interface panel, at least one other interface panel corresponding to at least one other subscribing application that displays information derived from the input.

11. A system comprising:

at least one data processor forming part of at least one computing system; and

memory storing instructions, which when executed, result in the at least one or more data processors performing operations comprising:

receiving, at a client module implemented by at least one computing system from at least one application, a subscription request to data entries from a user;

transmitting, by the client module to a client browser module being implemented by at least one computing system, a fetch entry command to retrieve entry values stored for the user;

receiving, by the client module from the client browser module, the entry values stored for the user;

sending, by the client module to the at least one application, the entry values received from the browser module, via a notification message;

sending, by the client module to a broadcast module being implemented by at least one computing system, a subscription request message requesting subscription to entry values corresponding to the user, via a first notification message;

receiving, by the client module from the broadcast module, the entry values corresponding to the user, via a second notification message;

determining, by the client module, that the entry values received from the broadcast module differ from the entry values stored in the client browser module; and

issuing, by the client module, a command to the client browser module to store new entry values for the entry values and sending, by the client module, the new entry values to all applications that have requested subscription to the entry values, via a subscription message.

12. A system as in claim 11 , wherein the client modules stores metadata characterizing a user comprising one or more data entry fields and corresponding values.

13. A system as in claim 11 , wherein the client browser module stores input received from the user at the at least one application.

14. A system as in claim 11 , wherein the broadcast module stores metadata characterizing a set of users comprising one or more data entry fields and corresponding values.

15. A system as in claim 11 , wherein the application receives input from the user, the application routes the input to the client module, the input is displayed in a first user interface panel associated with the application via the client browser, the client module routes the input to the broadcast module, the broadcast modules routes the input received from the client module to every subscribing application, and the client browser simultaneously displays, with the first user interface panel, at least one other interface panel corresponding to at least one other subscribing application that displays information derived from the input.

Assignments (2)
CHANGE OF NAME Recorded Jul 12, 2011
From: BUSINESS OBJECTS, S.A.
To: SAP FRANCE S.A.
Reel/Frame 026581/0190 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 20, 2008
From: BISHOP, MATTHEW
To: BUSINESS OBJECTS, S.A.
Reel/Frame 021870/0280 →
Continuity (1)
Related Publication 20100125859A1 · May 20, 2010