Dynamic, self-modifying graphical user interface for relational ...

10 downloads 0 Views 2MB Size Report
May 13, 1997 - Inventors: Carolyn Marie Yeager; Jerry Lynn. Udy, both of Colorado ... DESCRIBE the SELECT LIST into a SELECT DESCRIPTOR i. Data Type.
US005950190A

United States Patent

[19]

[11]

Yeager et al.

[45]

Patent Number: Date of Patent:

5,950,190 Sep. 7, 1999

[54] DYNAMIC, SELF-MODIFYING GRAPHICAL

OTHER PUBLICATIONS

USER INTERFACE FOR RELATIONAL DATABASE APPLICATIONS

Chapter 12, “Implementing Dynamic SQL Method 4”, from

Inventors: Carolyn Marie Yeager; Jerry Lynn

No. A21020—2.

Oracle Programmers Guide, Release 2.1; Mar. 1995; Part Udy, both of Colorado Springs, Colo.

Primary Examiner—Wayne Amsbury

Assignee: Aptek, Inc., Colorado Springs, Colo.

Attorney, Agent, or Firm—John R. Ley

Appl. No.: 08/854,928 Filed: May 13, 1997

[57]

ABSTRACT

07/3; 707/511; 707/103

A dynamic database interface for relational and object oriented databases includes a dynamic, self-modifying graphical user interface de?ning a plurality of graphical Windows for searching and editing the contents of the

Field of Search .................................................. .. 707/4

relational database, as Well as modifying the structure of the

Int. Cl.6 .................................................... .. G06F 17/30

US. Cl. ................ ..

database tables. The graphical user interface recognizes References Cited

modi?cations to the structure of the database tables and

U.S. PATENT DOCUMENTS

regenerates the graphical Windows to accommodate such modi?cations. The graphical Windows also depict schematic

5,428,737 5,428,776 5,555,403 5,732,274

6/1995 6/1995 9/1996 3/1998

5,745,896

4/1998 Vijaykumar ..

707/100

5,749,079

5/1998 Yong et al.

707/100

5,832,481

11/1998

Li et al. .................................... .. 707/4 Roth?eld .... .. 707/4 Cambot et a1. ........................... .. 707/4 O’Neill ................................. .. 395/705

Shef?eld

......

. . . . . . ..

representations of physical locations of objects stored Within the tables of the relational database. In addition to using the graphical Windows to edit the contents and modify the structure of the relational database, batches of data may be imported to both edit the contents of the relational database and modify the structure of the relational database tables.

707/4

5,893,125

4/1999 Shostak

707/511

5,899,997

5/1999 Ellacott

.. 707/103

26 Claims, 19 Drawing Sheets

154 180 For Each Table Selected in Step 170

182

Generate SELECT Statement Selecting all Columns in the Table. (SELECT * from DataTNames[Tablelndex]. TableName)

\J

i PREPARE the SQL Statement for Parsing A

184

i DECLARE a CURSOR for the PREPAREd SQL Statement

OPEN the CURSOR

186

188

DESCRIBE the SELECT LIST into a SELECT DESCRIPTOR

i

190

Process the SELECT DESCRIPTOR to get the Column Attributes:

Data Type Precision/Scale Width

192

i Build an Internal Data Structure

Data Dictionary Interface Containing the Column Characteristics for Each Table

w

194

U.S. Patent

Sep.7,1999

Sheet 2 0f 19

Fig. 5 1:

5,950,190

60

Choices for Description:

1/4" Hex Driver Set

%

1/4" Std Deepwell Socket Set (11 1/4" Std Socket Set (1pc) 1/4" Std Socket Set W/Ratchet (19 10" Flat Panel Display 1553 Network Tester 1553 Netwprk Tester Remote Unit 3/8 Std Socket Set W/ Ratchet (23

3/8"Deepwe|l Socket Set (15pc) 3/8" Metric Socket & Hex Driver 8 35mm Camera 35mm Camera Flash

4-Channel Audio Mixer

KM

Cancel I

I

Clear

2

l>|

OK

I

U.S. Patent

Sep.7,1999

Sheet 5 0f 19

5,950,190

.GEm

Ec£Bbu23k9m581.0

u6w>L250E63mz0

U.S. Patent

Sep.7,1999

mm.

Sheet 6 0f 19

mm mm

5,950,190

mm

I

.mt k \ mvtmE m \

tg$25ou.né5m:s0?

wBS\m

_ octm

2/8m /

cozq wo

U.S. Patent

Sep.7,1999

Sheet 7 0f 19

5,950,190

mm

mm

9253 2 m

gm:

960

.mt m

QmK m6C25O90E://5B2Q0 E:EgQmsQ

U.S. Patent

S

Sep.7,1999

Sheet 8 0f 19

SSIMS - Lave/1 SPACESTATION

Database

Resize

Control

110

Pallets

El Help

/

Fig. 9

5,950,190

_

U.S. Patent

S

Sep.7,1999

5,950,190

SSIMS - Leve/2 HAB1

Database

112

Sheet 9 0f 19

Resize

Control

a

Pallets

/

)

5gp

(122 O1

O2

O3

O4

O5

06

S1

S2

S3

S4

S5

S6

D1

D2

D3

D4

D5

D6

P1

P2

P3

P4

P5

P6

Fig. 10

U.S. Patent

I:

Sep.7,1999

Sheet 10 0f 19

SSIMS - LeVeI3SSRACKO3

Database

Resize Control

Pallets

D

EFGHJKLM

mHm Fig. 1 1

5,950,190

U.S. Patent

Sep.7,1999

Sheet 11 0f 19

I: Trak-Vu - Level2 Catalog 1

5,950,190 m

E

?le Eesize Control kocation Control ?elp

124

m9

120

EHIEH Fig. 12

U.S. Patent

Sep.7,1999 150 '

Sheet 12 0f 19

5,950,190

Get Table Name(s)1/—\ 752

\

l

Get Column Names and/“154 Attributes for Each Table

l Get Column Constraints,/\ 156 for Each Table FOR EACH TABLE

l

l

Build Search Window

Build Edit Window

160 j

k 162

158

1

Build Design Window

K 164

Fig. 13

170 \ Determine the Table Names from the Data Dictionary

(SELECT TABLE_NAME from USER_TABLES) 7

(For Each Table Selecteh 172 l Build the Internal Data Structure DataTNames which contains:

152

Table Name and

Table lD (ColumnPrefix)

Fig. 14

/_\ 174

176

U.S. Patent

Sep.7,1999

5,950,190

Sheet 13 0f 19

154

180

(For Each Table Selected in Step 17M 7

182

Generate SELECT Statement Selecting all Columns in the Table. (SELECT * from DataTNames[Tablelndex]. TableName)

g

l PREPARE the SQL Statement for Parsing A

DECLARE a CURSOR for the PREPAREd SQL Statement

184

186

l OPEN theYCURSOR

A

188

l DESCRIBE the SELECT LIST into a SELECT DESCRIPTOR 1

190

Process the SELECT DESCRIPTOR to get the Column Attributes:

Data Type Precision/Scale

192

Width

l Build an Internal Data Structure

Data Dictionary Interface Containing the Column Characteristics for Each Table

Step 156

Fig. 15

196

194

U.S. Patent

Sep.7,1999

Sheet 14 0f 19

5,950,190

156 /

\

200

Gor Each Table ('tablename') Selected in Step 179 202

Determine the Primary Constraint Name of the Primary Key Constraint

(SELECT CONSTRAiNT_NAME from DBA_CONSTRAINTS WHERE CONSTRAINT_TYPE='P' and TABLENAME='tab/ename')

204 r

Determine which Column has the Primary Key Constraint

(SELECT COLUMN_NAME from DBA_CONS_COLUMNS WHERE CONSTRAiNT_NAME='Primary Constraint Name‘) 206

v

/

Determine the Referentia/ Constraint Name of the Referentiai integrity Constraint

(SELECT CONSTRAiNT_NAME from DBA_CONSTRAINTS WHERE CONSTRAiNT_TYPE =‘R' and TABLENAME = 'tablename')

208

ii

Determine which Column has the Referential Integrity Constraint (SELECT COLUMN_NAME from DBA_CONS_CONLUMNS WHERE CONSTRAiNT_NAME = 'Referential Constraint Name‘) v

Attach the Primary Key Constriant and the Referential Integrity Constraint to the Correct Column of the Data Dictionary Interface Data Structure

Step 158

210 212

Fig. 16

/

\ i

U.S. Patent

Sep.7,1999

Sheet 15 0f 19

5,950,190

160

220

C For Each Column in the Table)___/ l Build Parameter (Column Name) r‘ 222 Button

l Build the Choices Window (see Fig. 20) /‘ 224

l Attach Choices Window to the

/—\ 225

Parameter (Column Name) Button

l Build CPERATOR Pull Down List /" 228

l Build Edit Field adjacent the

/\ 230

Parameter (Column Name) Button

l Attach the Dynamically Generated /\ 232 Search Window to the Main Window

Fig. 17

U.S. Patent

Sep.7,1999

240

Sheet 16 0f 19

5,950,190

(For Each Column in the Table

Suggest Documents