IP Library Granted Patent US 8,924,848
Granted Patent B2
US 8,924,848 · App. 13/549,567 · Granted Dec 30, 2014

Synchronizing a user interface area

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,924,848
App. No.
13/549,567
Granted
Dec 30, 2014
Kind
B2
Abstract

A user interface (UI) area having multiple data sources is synchronized based upon changes made to UI elements associated with the UI area. To synchronize the changed UI elements, a processor of the computer determines UI controls and data objects associated with the UI area. Based upon a modification to a data object, a corresponding UI control that is affected by the modification is determined. A synchronization process is triggered to determine updated UI controls and updatable UI controls from the UI controls that are affected by the modification. The UI area is synchronized by updating the updatable UI controls based upon the modification.

Claims (67)

1. A computer implemented method to synchronize a computer generated user interface (UI) area, comprising:

a processor of a computer determining one or more UI controls and one or more data objects associated with the computer generated UI area;

based upon a modification of the one or more data objects, the processor

determining the one or more UI controls affected by the modification, and

computing a complexity of the one or more UI controls affected by the modification, to determine an associated degree of regeneration;

triggering a synchronization process to determine one or more updated UI controls and one or more updatable UI controls from the UI controls affected by the modification, wherein the synchronization process includes implementing a data transformation when an internal representation of data associated with the processor is different from a corresponding external representation of data associated with the UI area, by

determining one or more values associated with the modified data objects,

determining one or more values associated with the affected updatable UI controls, and

when the values associated with the modified data objects are different from the values associated with the affected updatable UI controls, triggering a format conversion of the data; and

based upon the degree of regeneration of the one or more UI controls affected by the modification, regenerating the computer generated UI area by updating the updatable UI controls.

2. The computer implemented method of claim 1 , wherein determining the UI controls and the data objects comprises: generating a conditional list including one or more corresponding events based upon a correlation between the data objects and the computer generated UI area, the UI control and the computer generated UI area, and the data objects and the UI control.

3. The computer implemented method of claim 2 , wherein the events

represent a corresponding qualification of the data objects and the UI controls, and

store one or more associations between the one or more data objects and the one or more corresponding UI controls.

4. The computer implemented method of claim 1 further comprising:

generating a data binding structure to determine the corresponding one or more UI controls affected by the modification; and

generating an updated UI controls list including the affected UI controls based upon the data binding structure, to re-render the affected UI controls on the computer generated UI area by updating the affected UI controls based upon the modification.

5. The computer implemented method of claim 1 , wherein the synchronization process includes: synchronizing the computer generated UI area associated with a client system with a corresponding application program associated with a server system.

6. The computer implemented method of claim 1 , wherein the synchronization process includes:

generating a data binding structure to determine the corresponding one or more UI controls affected by the modification;

determining the one or more updated UI controls and the one or more updatable UI controls from the data binding structure;

based upon the data binding structure, filtering the updated controls to generate an updated UI controls list including the updatable UI controls affected by the modification; and

regenerating the updatable UI controls affected on the computer generated UI area by updating the affected updatable UI controls based upon the modification.

7. The computer implemented method of claim 1 , wherein determining the updated UI controls include: determining one or more instantaneously regenerating UI controls.

8. The computer implemented method of claim 6 , wherein the synchronization process includes: regenerating one or more updated UI controls not instantaneously regenerated, to synchronize the computer generated UI area.

9. The computer implemented method of claim 1 further comprising: renewing the UI controls to remove an updated UI control status and an updatable UI control status.

10. The computer implemented method of claim 1 further comprising a UI programming model including:

a user interface phase to receive a modification to one or more data objects associated with the computer generated UI area and to synchronize the computer generated UI area;

an update interface phase to determine updated UI controls and updatable UI controls upon a trigger of a synchronization process; and

a synchronization phase to synchronize the computer generated UI area by updating the updatable UI controls based upon the modification.

11. The computer implemented method of claim 1 , wherein synchronizing the computer generated UI area comprises: queuing the affected updatable UI controls to synchronize during the synchronization phase.

12. The computer implemented method of claim 1 further comprising:

determining the one or more UI controls and the one or more data objects associated with the computer generated UI area;

upon receiving a modification to a UI control representation of a corresponding UI control on the computer generated UI, transmitting a notification associated with the received modification to register one or more updated UI controls;

updating the one or more data object affected by the modification and triggering a data binding structure to determine the one or more affected UI controls; and

determining the one or more updated UI controls and one or more updatable UI controls to update the updatable UI controls based upon the modification.

13. The computer implemented method of claim 1 , wherein the synchronization process includes:

removing a regeneration notification associated with the updated UI controls and the updatable UI controls, upon synchronizing the computer generated UI area.

14. A computer system to synchronize a computer generated user interface (UI) area, comprising:

a processor configured to read and execute instructions stored in one or more memory elements; and

the one or more memory elements storing instructions to

a user interface (UI) engine to

determine one or more UI controls and one or more data objects associated with the computer generated UI area, and

compute a complexity of the one or more UI controls affected by the modification, to determine an associated degree of regeneration;

a delta handler to determine the one or more UI controls affected by a modification of the one or more data objects;

an update interface engine to determine one or more updated UI controls and one or more updatable UI controls form the one or more UI controls affected by the modification; and

a synchronization engine to regenerate the computer generated UI area by updating the updatable UI controls, based upon the degree of regeneration of the one or more UI controls affected by the modification, wherein the synchronization engine implements a data transformation when an internal representation of data associated with the processor is different from a corresponding external representation of data associated with the UI area, by

determining one or more values associated with the modified data objects,

determining one or more values associated with the affected updatable UI controls, and

when the values associated with the modified data objects are different from the values associated with the affected updatable UI controls, triggering a format conversion of the data.

15. The computer system of claim 14 further comprises:

an event handler to generate a conditional list of one or more events representing a corresponding qualification of the UI controls and the data objects; and

a data binder to generate an optimized data binding structure based upon a modification of the one or more data objects, and determine corresponding one or more UI controls affected by the modification.

16. The computer system of claim 14 further comprises: a server to determine the one or more UI controls and the one or more data objects associated with the computer generated UI area;

receive a modification of the one or more data objects;

determine the one or more UI controls affected by the modification;

determine the one or more updated UI controls and the one or more updatable UI controls; and

synchronize the computer generated UI area with a client system by updating the updatable UI controls based upon the modification.

17. An article of manufacture including a non-transitory computer readable storage medium to tangibly store instructions, which when executed by a computer, cause the computer to:

determine one or more UI controls and one or more data objects associated with a computer generated UI area;

determine the one or more UI controls affected by a modification of the one or more data objects;

compute a complexity of the one or more UI controls affected by the modification, to determine an associated degree of regeneration;

trigger a synchronization process to determine one or more updated UI controls and one or more updatable UI controls from the one or more UI controls affected by the modification, wherein the synchronization process includes implementing a data transformation when an internal representation of data associated with the processor is different from a corresponding external representation of data associated with the UI area, by

determining one or more values associated with the modified data objects,

determining one or more values associated with the affected updatable UI controls, and

when the values associated with the modified data objects are different from the values associated with the affected updatable UI controls, triggering a format conversion of the data; and

based upon the degree of regeneration of the one or more UI controls affected by the modification, regenerate the computer generated UI area by updating the updatable UI controls.

Assignments (2)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 19, 2012
From: KLINGER, UWE
To: SAP AG
Reel/Frame 029004/0951 →