IP Library Patent Application 14032196
Patent Application
App. No. 14/032,196

DYNAMIC GENERATION OF USER INTERFACE

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 None
App. No.
14/032,196
Abstract

Described herein is a technology to dynamically generate a user interface (UI). In one implementation, a data source is analyzed to determine field information of the data source. UI controls are mapped to fields of the data source based on the field information to generate UI control mapping information. Based on the field information and the UI control mapping information, a layout may be generated. The layout may then be presented for preview.

Claims (50)

1 . A computer-implemented method of dynamically generating a user interface (UI), comprising:

analyzing a data source to determine column information of the data source;

mapping UI controls to columns of the data source based on the column information to generate UI control mapping information;

receiving one or more user selections of one or more of the columns;

generating, based on the column information and the UI control mapping information, a layout of one or more of the UI controls associated with the one or more user-selected columns; and

presenting the layout for preview.

2 . A computer-implemented method of dynamically generating a user interface (UI), comprising:

analyzing a data source to determine field information of the data source;

mapping UI controls to fields of the data source based on the field information to generate UI control mapping information;

generating a layout based on the field information and the UI control mapping information; and

presenting the layout for preview.

3 . The method of claim 2 wherein analyzing the data source comprises determining the field information that includes at least a field format and a field type.

4 . The method of claim 2 wherein analyzing the data source comprises determining if the data source supports metadata from which the field information may be derived.

5 . The method of claim 4 wherein if the data source is determined to support the metadata, automatically extracting the field information from the metadata.

6 . The method of claim 4 wherein if the data source is determined to not support the metadata, analyzing data from the data source to determine the field information.

7 . The method of claim 6 wherein analyzing the data from the data source comprises determining, using a pre-defined analysis rule, a data type based on a data format.

8 . The method of claim 7 wherein if the data is complex, recursively drilling down the data to obtain simple data, and using the pre-defined analysis rule to map the data type of the simple data based on the data format of the simple data.

9 . The method of claim 6 further comprises dynamically determining additional data information from the data.

10 . The method of claim 2 wherein mapping the UI controls to the fields of the data source comprises:

determining if a field described by the field information is complex or simple; and

if the field is determined to be simple, mapping a UI control to the field.

11 . The method of claim 10 wherein the mapping of the UI control to the field is based on a pre-defined UI mapping table.

12 . The method of claim 10 further comprises:

determining if the field is editable; and

if the field is editable, replacing the UI control mapped to the editable field with an editable UI control.

13 . The method of claim 10 further comprises:

if the field is determined to be complex, recursively drilling down the complex field until a simple sub-field is obtained; and

mapping the UI control to the simple sub-field.

14 . The method of claim 2 wherein generating the layout comprises:

presenting the field information and the UI control mapping information to a user;

receiving one or more user selections of one or more of the fields;

generating a layout of suggested UI controls associated with the one or more user selected fields, wherein the suggested UI controls are retrieved from the UI control mapping information.

15 . The method of claim 14 wherein presenting the layout for preview comprises retrieving data corresponding to the user selected fields from the data source and presenting the layout with the retrieved data.

16 . The method of claim 2 further comprises exporting the layout to different UI frameworks.

17 . A non-transitory computer-readable medium having stored thereon program code, the program code executable by a computer to:

analyze a data source to determine field information of the data source;

map UI controls to fields of the data source based on the field information to generate UI control mapping information;

generate a layout based on the field information and the UI control mapping information; and

present the layout for preview.

18 . The non-transitory computer-readable medium of claim 17 wherein the program code is further executable by the computer to:

if the data source is determined to not support the metadata, analyze data from the data source to determine the field information.

19 . A system comprising:

a non-transitory memory device for storing computer readable program code; and

a processor in communication with the memory device, the processor being operative with the computer readable program code to

analyze a data source to determine field information of the data source,

map UI controls to fields of the data source based on the field information to generate UI control mapping information,

generate a layout based on the field information and the UI control mapping information, and

present the layout for preview.

20 . The system of claim 19 wherein the processor is further operative with the computer readable program code to:

if the data source is determined to not support the metadata, analyze data from the data source to determine the field information.

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 20, 2013
From: ZHU, JIN YOU; CAI, XIANG; ZANG, YAN; CAO, LIN
To: SAP AG
Reel/Frame 031244/0807 →