`a2) Patent Application Publication oc) Pub. No.: US 2001/0018708 Al
`Shisler et al.
`(43) Pub. Date: Aug. 30, 2001
`
`
`US 2001
`
`0018708A1
`
`(54) PLATFORM-INDEPENDENT
`PROGRAMMABLEBATCH PROCESSING
`ENGINE
`
`(76)
`
`Inventors: Harry E. Shisler, Buena Vista, CO
`(US); Kevin D. Reitz, Aurora, CO (US)
`
`Publication Classification
`
`(51) Unt. C7 ccccccceene GO6F 15/16; GO6F 15/177
`
`(52) US. Ch coececccesecsasee 709/220; 709/201; 709/219
`
`Correspondence Address:
`FENWICK & WEST LLP
`TWO PALO ALTO SQUARE
`PALO ALTO, CA 94306 (US)
`
`(21) Appl. No.:
`
`09/758,565
`
`(22)
`
`Filed:
`
`Jan. 11, 2001
`
`Related U.S. Application Data
`
`(63) Continuation of application No. 08/743,201, filed on
`Nov. 5, 1996.
`
`(57)
`
`ABSTRACT
`
`A data processing system includes a multitude of client
`computers and server computers, of various platform types,
`interconnected by a network. A batch processing engine
`permits an application resident on a client computer to
`specify processing to be performed by one or more of the
`computers connected to the network,
`regardless of the
`platform type of such computers. The batch processing
`engine is implemented in part by middleware.
`
`System 100
`
`Design Tool
`Subsystem 210
`
`Pracessing
`Subsystem 271
`
`Client
`Middleware
`Subsystem 212
`
`Server
`Computer
`121
`
`Server
`Middleware
`Subsystem 213
`
`Processing
`Subsystem 218
`
`Server
`Computer
`124
`
`VO
`Middleware
`Subsystem 214
`
`Database
`Middleware
`Subsystem 215
`
`Database
`Server
`Computer
`127
`
`Spec. Server
`Middleware
`Subsystem 219
`
`Batch
`Processing
`Engine
`200
`
`[=]
`
`Specification
`Server
`Computer
`126
`
`Google Exhibit 1012
`Google v. VirtaMove
`
`Google Exhibit 1012
`Google v. VirtaMove
`
`
`
`Patent Application Publication Aug. 30, 2001
`
`Sheet 1 of 43
`
`US 2001/0018708 Al
`
`Wid
`
`JOOS
`
`4gindwoy
`
`vel
`
`JOAI8S
`
`Jayndwog
`
`Gel
`
`“Lt
`Wid——
`
`uopeoyjoadseseqeyeq
`lJ)|&
`
`Jayjndwoyyondwoy
`
`ABNIBS49M9S
`,aunbl4
`
`JONAS
`
`JaNiagajtcy
`
`seyndwog
`
`eck
`
`soyndwoy
`
`Lob
`
`OSLMOMION
`
`OOLwaishs
`
`Leb
`
`esequieq
`
`JANES
`
`Jayndwoy
`
`Bel
`
`
`
`
`Patent Application Publication Aug. 30, 2001
`
`jooyubiseq
`
`00z6LzwaysksqngGizwaysAsqns
`
`
`eulbuaOJEMOIDDIINa/eMe|PPIW
`
`
`
`Bulssao0ldJaMes‘adsaseqeleq
`
`QEMa9IPPIINweyshsqn
`Jaindwoybot
`
`JONASJeyndwog|
`
`
`uoleopioedsaseqejeq
`Jajndwo4y||se}ndwoy
`JBAIBS=|JBAIOS
`92}2e1
`
`@lzweyshsqnse OMOIDDINYs
`Gulsseo0141ON8S
`
`
`yoleg
`
`vizwalsAsqns
`
`
`
`OLzwajsksqns
`
`Bulssed0iq
`
`LLZwayshsqng
`
`BIEMBIPPIW
`
`Zigweayshsqns
`
`WUaID
`
`Sheet 2 of 43
`
`US 2001/0018708 Al
`
`Zzainbi4
`
`001washs
`
`
`
`JOINdWODWwalD
`
`bbE
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 3 of 43
`
`US 2001/0018708 Al
`
`301
`
`SPECIFY REPORT
`PROPERTIES
`
`302
`
`SPECIFY REPORT
`SECTION
`
`303
`
`DESIGN SECTION
`
`
`
`306
`SPECIFY TABULAR
`COLUMN
`PROPERTIES
`
`307
`
`SPECIFY TABULAR
`ROWS
`
`CELL OVERRIDES
`
`308
`
`SPECIFY TABULAR
`
`304
`SPECIFY OBJECT
`PROPERTIES
`
`305
`
`
`IS THIS A
`
`TABULAR SECTION?
`
`
`YES
`
`
`
`
`MORE SECTIONS?
`
`YES
`
`NO
`
`310
`DESIGN COMPLETE
`
`Figure 3
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 4 of 43
`
`US 2001/0018708 Al
`
`401
`
`BUILD REPORT
`
`STRUCTURES
`
`
`
`
` 402
`FETCH REPORT
`HEADER
`SECTION SPECS
`
`
`
`404
`BUILD SECTION
`MEMORY
`STRUCTURES
`
`YES
`
`NO
`
`405
`
`PRINT OBJECTS
`
`
`
`
`406
`DESTROY
`
`SECTION
`
`MEMORY
`STRUCTURES
`
`
`a2
`DESTROY
`SECTION
`MEMORY
`STRUCTURES
`
`
`
`407
`FETCH FIRST
`LEVEL SECTION
`SPECIFICATIONS
`
`
`
`
`
`
`at
`
`FETCH SECTION
`DATA RECORDS
`
`
`
`
`
`410
`BUILD SECTION
`MEMORY
`STRUCTURES
`
`
`408
`9
`SUCCESS?
`
`
`
`YES
`NO
`
`409
`
`TERMINATE
`REPORT
`
`Figure 4
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 5 of 43
`
`US 2001/0018708 Al
`
`
`501
`
`
`FETCH REPORT
`
`
`FOOTER SECTION
`SPECS
`
`
`
` 504
`503
`
`
`BUILD SECTION
`PRINT OBJECTS
`MEMORY
`
`STRUCTURES
`
`
`
`
`
`
`505
`DESTROY
`SECTION
`MEMORY
`STRUCTURES
`
`Figure 5
`
`
`
`Patent Application Publication
`
`Aug. 30, 2001 Sheet 6 of 43
`
`US 2001/0018708 Al
`
`603
`
`PROCESS LEVEL
`BREAKS
`—
`
`612
`RETURN
`
`607
`ACCUMULATE
`VALUESINTO
`TABULAR CELLS
`
`611
`
`PRINT OBJECTS
`
`601
`FETCH
`DATABASE
`
`RECORDS
`BREAKS
`
`605
`
`PROCESS LEVEL
`
`
`
`
`
`TABULAR
`SECTION TYPE?
`
`YES
`
`REQUESTS
`TOTALS
`
` 609
`
`PERFORM
`
`
`
`
`DATABASE
`OUTPUT
`
`
`610
`
`ACCUMULATE
`
`Figure 6
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 7 of 43
`
`US 2001/0018708 Al
`
`704
`DETERMINE
`
`HIGHEST LEVEL
`
`BREAK >0?
`
`NO
`
`YES
`
`
`
`703
`
`
`TABULAR
`SECTION TYPE?
`
`
`
`YES
`
`705
`
`FETCH LEVEL BREAK
`SPECIFICATIONS
`
`709
`RETURN
`
`
`
`710
`RETURN
`
`711
`RETURN
`
`
`
`
`
`
`
`THIS LEVEL
`HAS BROKEN?
`
`
`
`
`
`
`
`708
`PROCESS CHILD
`SECTIONS
`
`
`Figure 7
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 8 of 43
`
`US 2001/0018708 Al
`
`801
`FETCH LEVEL
`BREAK
`SPECIFICATIONS
`
`
`
` THIS LEVEL <=
`HIGHEST BREAK?
`
`
`
`
`804
`
`
`RESOLVE ALL CELLS
`B09
`
`IN MATRIX
`
`
`
`
`
`DATABASE
`
`PERFORM DATABASE
`OUTPUT REQ?
`OUTPUT REQUESTS
`
`808
`
`ROLL UP NUMERIC
`
`CELLS TO NEXT
`HIGHER LEVEL
`BREAK
`
`806
`
`ZERO OUT CELLS FOR
`CURRENT LEVEL
`
`
`
`Figure 8
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 9 of 43
`
`US 2001/0018708 Al
`
`903
`
`BUILD PRINT OBJECT
`
`901
`FETCH OBJECT
`SPECIFICATIONS
`
`
`
`
`904
`
`
`
`CALL PRINT APTS
`
`Figure 9
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 10 of 43
`
`US 2001/0018708 Al
`
`
`
`
`1001
`FETCH CHILD
`SECTION
`SPECIFICATIONS
`
`
`
`1003
`
`
`BUILD SECTION
`MEMORY
`STRUCTURES
`
`
`
`
`
`1004
`
`
`
`FETCH SECTION
`DATA RECORDS
`
`1605
`
`
`
`DESTROY SECTION
`MEMORY
`
`STRUCTURES
`
`
`Figure 10
`
`
`
`Patent Application Publication
`
`Aug. 30, 2001 Sheet 11 of 43
`
`US 2001/0018708 Al
`
`
`
`
`Page Header
`
`1112
`Cede -
`THERE
`
`
`
`Account Balance Report
`
`Level Creak
`
`Header Section
`
`4113
`
`Coupe;
`ooc73
`
`March
`Sue
`Jarun’y
`Business
`ol
`
`Colummnar
`leil
`__Abel
`
`Section 1114
`THOS
`
`
`110£
`
`1108
`
`BBL
`Ic
`RAL
`ar
`
`BBL
`114
`
`BBL
`ic
`
`BBLEP
`111€
`
`BBLOBr
`111
`bbLGoP
`WW
`
`$3
`141€
`
`so
`144C
`
`SF
`1W4r
`
`
`Level Bresk
`
`
`Footer Section
`
`
`
`1115
`Jeruay
`
` 12,643 68
`Totals
`4,780.15
`426,614.07
`
`
`7 7
`
`3
`72
`
`~M
`
`
`
`Lompeny
`
`0307C
`
`334
`
`TU AAR AD
`414,304.84
`
`101 S$?
`
`AG as
`
`7,562.78
`
`€,1E7.£0
`“4E82
`bhatt
`
`S198
`+1 729.38
`
`4037.30
`7752
`241U 50
`
`* Note - The armounts published in this report are based on incomplete data
`
` Page Footer
`
`Section 1116
`
`Figure 11A
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 12 of 43
`
`US 2001/0018708 Al
`
`Page Header
`Sectm 1122
`
`
`
`Account Balance Report
`
` Time-
`
`1G 12:E4
`
`Suslhess Unt
`
`Object Ascoun:
`
`Subklay
`
`Level Break 1123
`Header Seeton
`
`January
`
`Zaeinees Unt
`
`January
`
`“Dae incer Unt
`
`Jenuav
`
`=Bseince> Unt
`
`Jonuay
`
`Susiwess Wiel
`
`Jannat
`
`susiness URT
`
`Jonuary
`
`2 ssiness Unt
`
`Jznuary
`
`3 asineeo Unt
`
`January
`
`Jusiness Unt
`
`Jznuay
`
`Dasmess Uil
`
`January
`
`3isiness Unt
`
`znuay
`
`ac4
`
`Peouary
`
`Object Accoun:
`
`Faaiuary
`
`Objact Ascoun:
`
`Famwan
`
`Objeot Ascoun:
`
`Fasmay
`
`Objeel Awa.
`
`Te raamay
`
`Ubiect Ascoun:
`
`144,024.84
`
`Foowary
`
`Object Ascoun:
`
`Fasway
`
`Object Ascoun:
`
`Fasiuary
`
`Object Accoun:
`
`Faoiuay
`
`Objet Aawu.
`
`bactlany
`
`Object Accoun:
`
`401 C7?
`
`Frowaty
`
`Subiciare
`
`Subsea
`
`Suberiary
`
`Salerian;
`
`we eS
`
`Ss sbecwry
`
`2578
`
`5 sbeiciars
`
`Subsrisre
`
`8187.0
`
`Gabeiciars
`
`D>.00r
`
`118.22
`
`Vath
`
`Bale
`
`Aah
`
`Subsiciars
`
`Viet ISth
`
`Figure 11B
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 13 of 43
`
`US 2001/0018708 Al
`
`
`| section 1132
`
`Net Profit Report
`
`
` Tine. -
`TH RAD
`
` Level Break
`Header SectionKoa)
`
`Comrany
`ooc7o
`
`Tabular,
`
`
`
`AccCuyT,
`1134
`Section
`January
`Peburay
`
`
`
`Deceripticn
`
`
`
`
`
`
`Veverues - Gass 1
`72,200.00
`73 230.30
`73,100.co
`
`
`averues - Clas2
`14,8C0.00
`44,920.30
`14,900.CO
`
`
`Gia Reverwes
`oC, €0,00
`00,130.30
`06,000.C6
`
`
`
`
`beta Diree: Coste
`
`
`Profits /Loss
`“fe enon
`955 Nn
` ed Prv‘it ‘I nas
`SaTMICA
`
`
`
`Revenues
`
`Expenses
`64,8C0.00
`
`11€,800,00
`
`-182,6C0.00
`
`ixect Cocie Clase 1
`
`JroctCoele Clase 2
`
`68,738.30
`
`418£30.0
`
`AG? 535.30
`
`64,800.C0
`
`-48,800.C0
`
`-83,700.C0
`
`Figure 11C
`
`
`
`
`
`
`Supplier Lecgerinquiry Print
`_ TReO42003P
`oa
`Voucher Joumal
`J.
`|RO4205
`
`aU RQ442é
`Accounts Payable Payment Oetal Rep C4
`“R0a570
`Create Payment Control Groups
`04
`
`| 4572
`Print Automatic Payments - Standard F 04
`RO4578
`Pasment Analysis Report
`4
`
`
`
`04
`od
`04
`O4
`Q4
`
`161
`461
`131
`164
`
`UBE
`UBE
`VBE
`UBE
`Ue
`
`
`
`1201
`
`y
`
`Patent Application Publication Aug. 30,2001 Sheet 14 of 43
`
`US 2001/0018708 Al
`
`JDE-Menus
`
`
`qi a!ay;
`
`
`
`‘Object Hibrarian.
`
`
`
`
`
`
`t
`
`
`
`Petweaed
`Eerin,ee
`
`
`FIGURE 12
`
`1200
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 15 of 43
`
`US 2001/0018708 Al
`
`JDE Menus
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`FIGURE 13
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 16 of 43
`
`US 2001/0018708 Al
`
`
`BRON telalast acre as)
`
` Sesemyeraerees[aLP FR
`
`Pea aa el
`
`
`Report Footer...
`
`
`
`Level Break Header Section
`Page Header...
`Total Section
`Page Footer...
`Group...
`
`
` Destroy Columnar...
`
`
`Select Business View...
`
`Quick Section...
`
`
`Data Selection Criteria
`>
`Sort Sequence...
`
`Join Sections...
`Override Specifications...
`
`
`Database Output...
`Shift+F5
`Cascade
`
`
`Shift+F4
`Tile
`
`
`
`
`
`
`1400
`
`FIGURE 14
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 17 of 43
`
`US 2001/0018708 Al
`
`
`
` J.D.Edwards ReportDesign-
`File Edit Section Objects Associate Layout Help
`
`
`Report Rendéring” Ct in ee
`. Untitled.
`ooo
`
`
`
`
`
`
`
`1500
`
`FIGURE 15
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 18 of 43
`
`Eile
`
`Alpha Variable
`Numeric Variable
`Date Variable
`
`US 2001/0018708 Al J.D.Edwards Report Design
`
`
`
`fecalmal oralecig
`
`FIGURE 16
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 19 of 43
`
`US 2001/0018708 Al
`
`=
`File Esk Section
`
`
`J.D.Edwards ReportDesign:
`'
`Objects LayoutHelpAssociate
`
`
`
`
`
`Report Rendering
`AD.Edwards & Compary
`Constant 000014
`
`
`
`FIGURE 17
`
`1700
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 20 of 43
`
`US 2001/0018708 Al
`
`
`aan
`"_J:D/EdwardsReport Design
`
`Objects Associate Layout Help
`olin tet >. pee
`. Report Rendering .
`+
`.D.Edwards & Company
`
`1503
`
`
`
`
`
`[St=4® Arial Rounded MT Boke
`} Augsburgerinitials
`® Baskervilte Old Face
`ae
`
`
` 216 anal N
`
` 1802 1800
`
`FIGURE
`
`18
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 21 of 43
`
`US 2001/0018708 Al
`
`
` leEe
`
`
`=] SupplierRom Relabonships Browse
`'54] Supplierttem Refahonshws Update
`2] Tax Area Report
`=lTax areas
`“A Tax DetailReport
`+
`"| Tax Rate/&rea Report
`ef Ft Tax Rules Setup
`
`ik
`
`1702
`
`FIGURE 19
`
`1900
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 22 of 43
`
`US 2001/0018708 Al
`
`
` ee ne _” dD.Edwards Report Design .
`File Edit Section Qbjects Associate Layout Help
`
`
`
`2002
`
`FIGURE 20
`
`2000
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 23 of 43
`
`US 2001/0018708 Al
`
`
`.'. 7 _j.pEdwardsReport Design.
`ae 7
`File Edit Section Objects Associate Layout Help
`:
`’ Select andSequence Section Sort Cbjects-.: -
`
`STle
`
`2102
`
`
`
`
`
`
`
`2100
`
`FIGURE 2]
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 24 of 43
`
`US 2001/0018708 Al
`
`St:
` = ee
`J.D-Edwards Report Design
`
`File Edit Section Objects Associate Layout Help
`
`2205
`
`
`2203
`
`2204
`
`2002
`
`2200
`
`FIGURE 22
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 25 of 43
`
`US 2001/0018708 Al
`
`
`AD.Edwards ReportDesign
`
`
`
`File Edit Section
`Objects Associate Layout Help
`
`
`
`Report Rendering—
`
`
`
`FIGURE 23
`
`2300
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 26 of 43
`
`US 2001/0018708 Al
`
`RROroideeecua eet
`
`
`
`Align Top
`Align Middle
`
`
` Business
`Acdress
`Alp
`Amount
`
`Unit
`Number
`Nar Align Database
`Vouchered YTD
`POOL g999s9999 OY -
`-
`-§.£99,999,999,999 39
`Grid Alignment...
`
`
`
`
`Teeeee
`
`
`FIGURE 24
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 27 of 43
`
`US 2001/0018708 Al
`
`J.D.Edwards Report Design
`=
`File Edit Section Objects Associate Layout Help
`
`v{F
`
`Report Rendering
`
`Address
`Alpha
`Amour
`
`Unit
`Number
`Name
`veuchered YTD
`OOOIOOOGOX —«GBSISIGD—_KHOGONKOIOOOOOKNIOKOON—--9.999,999,999.99 2
`
`
`
`
`
`
`
`‘Total Vouchered YTO for Business Urst
`
`~9,999,999,999,999.99
`
` Business
`
`
`
`2303
`
`FIGURE 25
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 28 of 43
`
`US 2001/0018708 Al
`
`
` File Edit &
`
`Properties...
`Level Break Header Section
`
`
`
`
`Destroy
`Select Business View...
`Quick Section...
`
`| Data Selection Criteria »|-2601
`Sart Sequence...
`Join Sections...
`
`
`-8,999,999,999,995.99
`
`Override Specifications...
`Database Output...
`Cascade
`
`r=]
`
`Tile
`
`Shift+F5
`
`Shifters
`
`Ee
`
`1503
`
`pate. wou’ 1 Repert Rendering
`Time. 10 2 Page Header
`Page.
`xx1 3 Supplier Master Report
`| 4 Group Total Section
`Adress
`Business
`Vouchered YTD
`Number
`Unit
`
`XXOOKNOOK«=:gg.999998
`
`FIGURE 26
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 29 of 43
`
`US 2001/0018708 Al
`
`
`
` ATs Report Design
`Objects Associate Layout Help
`‘
`»
`
`Create
`Properties...
`ection
`Level Break Header $
`
`rmeerraererce
`Paiwee
`
`Eon
`=
`™
`Destroy
`Select Business View...
`Guick Section...
`Data Selection Criteria
`Sort Sequence...
`Join Sections...
`
`
`i
`
`
`
`een
`: =
`Curd
`
`
`
`bl
`
`Ps
`a
`Connect Level Break Object
`
`a
`
`
`
`2601
`
`
`
`— D
`
`Override Specifications...
`
`atabase Output...
`
`| Cascade
`Tile
`xeg 1 Report Rendering
`xo 2 Page Header
`
`
`
`pate.
`me-
`
`ShifteF5
`shitters
`Lavards& Company
`pier Analysis Report
`
`4 Group Total Section
`Amour
`Ripha
`Aadress
`“Business
`Vouchered YTD
`hame
`Number
`Unit
`
`Son0co000000%aggggesaOOOOOOOO«—-«--9,999,999,999,999.99 |
`
`Total Vouchered YTD for Business Urat
`-9,999,999,995,499.99
`
`=
`
`ity
`e
`
`2701
`
`‘Page-
`00) 3SupplierMasterReport
`3
`
`
`FIGURE 27
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 30 of 43
`
`US 2001/0018708 Al
`
`
`" .D/Edwards Repart Design
`;
`;
`=
`oe
`
`
`
`
`File Edit Section Objects Associate Layout Help
`i=] °
`Report RenderingA Ee 1503
`Date. XX0OOKXX
`D Edwards &
`Company
`.
`=
`
`ia
`port Properties
`i
`Tene» XOEXOOOR
`SSS
`=
`
`Page.
`XXxXx
`
`Alpha
`Address
`Business
`
`Name
`aren
`Number
`Unit
`
`HO OOOKIDOO OOOO EEE eee
`KOO «99999999
`Total Vouchered YTD for Business Unit
`
`2801
`
`
`
`
`
`FIGURE 28
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 31 of 43
`
`US 2001/0018708 Al
`
`=
`
`mo
`
`.
`
`~
`
`7
`
`3 *
`
`ve
`7 ~
`7
`Me
`UBE Librarian’
`
`ne
`
`JBE Menus - ft .
`
`~
`
`ee
`
`soe
`
`.
`
`.
`
`y
`
`7
`
`oid
`
`~
`
`a:
`
`2902
`
`
`
`FIGURE 29
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 32 of 43
`
`US 2001/0018708 Al
`
`Date. XXXNOXKX
`Time.
` XXMXKXKK
`
`0 fn os E
`
`[3
`=taal
`
`
`
`” J.D/Edwards Report Design- Supplier Anatysis (Déniestic] " *
`le
`
`File Edit Section Objects Associate Layout Help
`
`. Repart Rendering: 2 <0.
`JLD.Edwards & Company
`
`‘Supper Analysis Report
`ee f
`
`3001
`
`aaaoe.
`
`i
`Busmess
`Address
`Alpha
`Amount
`
`Unit
`Number
`Name
`Vouchered YTD
`=
`
`ROKK 99999999—KKXOOOSOOOOOKKHOIOOONOOOOOK «+5,999,999,999,889 98
`
`
`
`
`-9,999,999,999,999.99
`PeITe
`EnSSanAROeES SOee
`
`
`2503
`
`FIGURE 30
`
`3000
`—
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 33 of 43
`
`US 2001/0018708 Al
`
`
`
`
`
`
`
`
`” J.D.Edwards ReportDesign -Supple?Analysis (Domestic J ~~
`wade
`
`File Edit Section Objects Associate Layout Help
`
`-9,999,999,999,999.99
`
`
`
`
`
`“, GroupTotal Sections 1:57: 7
`:
`Total¥ouchered YTD for Business Unit
`
`FIGURE 31
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 34 of 43
`
`US 2001/0018708 Al
`
`es Report Design - Supplier Analysis (Domestic }
`File Edit Section Objects Associate Layout Heip
`bead
`7
`7.
`7s
`>
`Report Rendering
`
`Amount
`Address
`Susiness
`Vouchered YTD
`Number
`Unit
`
`
`
`ROOK«—-««919999999 KKKOOOOKKKKOONOOOOOO——--8,990,989,999,989.99 |
`
`—__——!
`73201
`-9,939,999,999 999 gg
`
`Total Vouchered YTD for Business Unit
`
` =
`
`Page Header
`LD.Edwards & Company
`Suppiier Analysis Report
`Domestic Business Unis Only
`
`3202
`
`‘wg ¥! 4 Ts. GroupTotalSections, |."
`Total Vouchered YTD for Business Unit
`
`:
`
`3204
`
`3200
`
`FIGURE 32
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 35 of 43
`
`US 2001/0018708 Al
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`>
`
`© Detaut Printer
`(currently HP LaserJet Ill on LPT1:)
`©SpaciiicPrinter:
`HP LaserJet lit on LPT1:
`Onentation
`
`Dae
`
`Ey
`
`Letter 8 342x 11T in
`
`Paper
`Size:
`
`FIGURE 33
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 36 of 43
`
`US 2001/0018708 Al
`
`wat” St
`
`:
`
`File Edit Section anjeceAssociate Layout Help
`
`“EDEdwards Report Design™:
`
`-99,996,399,999.9999'
`
`Address
`Number
`
`or
`Ty
`
`Ordar
`Number
`
`Ship to
`Address
`
`Request
`Date
`
`Item Number
`
`98999989 Quant S9gseegagsgess UnitGosi
`
`1
`
`FIGURE 34
`
`3400
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 37 of 43
`
`US 2001/0018708 Al
`
`J.0.Edwards Report Design
`
`Properties...
`Cut
`Copy ee
`Paste
`pobesgegggga9e UnitCost
`-29,999,990,999.9609
`Extended Cost
`-9,999,999,999,909,99.99 |
`Clear
`
` -99,999,999,999,999,999.99
`
`Disconnect
`
`Business Rules...
`Caiculations
`
`Report Properties...
`Shee
`
`a Geet
`
`Pre
`
`REM Extended Cost
`
`FIGURE 35
`
`3500
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 38 of 43
`
`US 2001/0018708 Al
`
`
`
`
`
`File Edit Section
`Objects Associate Layout Help
`
`
`
`Address
`Evert Rules Design - Sample Application - PO Detail- Revisions
`
`initialize report header
`Indiahze report footer
`
`
`
`
`3600
`
`FIGURE 36
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 39 of 43
`
`US 2001/0018708 Al
`
`
`
`
`
`
`
`
`BC Line Mamber
`BC Sample Application - Document Pe
`BC Sample Application - tem Numb
`BC Sample Application - Onder Units
`BC Sample Application - Amount - U
`Report Constant
`
`Item Humber
`Unit Cost
`RC
`Extended Cost
`RC
`Report Variable
`
`=
`
`-
`
`
`
`FIGURE 37
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 40 of 43
`
`US 2001/0018708 Al
`
`
`
`Snipte
`Request
`
`
`
`
`
` a feeate Functions
`5
`CoGeneral Functions
`“{_BC Sampie Application -|
`
`RTOSoes sreea] Es CoTrig Functions
`
`
`BC Sample Application- 4
`5
`:{
`BC Sample Application -
`- 45d) S
`5
`i
`BC Sample Application -&
`
`3801
`
`
`
`FIGURE 38
`
`3800
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 41 of 43
`
`US 2001/0018708 Al
`
`
`
`
`
`
`
`[Get Next DocumentNumber
`24 Get Next JE Line Number
`
`FICURE 39
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 42 of 43
`
`US 2001/0018708 Al
`
`
`
`
`
`
`
`
`
`
`
`
`FIGURE 40
`
`
`
`Patent Application Publication Aug. 30,2001 Sheet 43 of 43
`
`US 2001/0018708 Al
`
`=
`4101
`sign - Sample Application - PO Heac
`Acre
`a2a eens
`
`it
`
`>
`
`999,999,938,99 9,999.99
`
`[eeenmenn
`
`
` ei
`
`
`
`i7
`
`
`
`flatsAbaayane
`Ae
`
`ab
`
`
`
`FIGURE 41
`
`4100
`
`
`
`US 2001/0018708 Al
`
`Aug. 30, 2001
`
`PLATFORM-INDEPENDENT PROGRAMMABLE
`BATCH PROCESSING ENGINE
`
`BACKGROUND AND FIELD OF THE
`INVENTION
`
`[0001] This invention relates generally to client/server
`data processing systems, and specifically to systems permit-
`ting applications prepared on a client computer to be sub-
`mitted for processing on any of a variety of connected server
`computers, which servers may beofdifferent platform types.
`
`[0002] Modem data processing systems are often imple-
`mented in “client-server” configurations in which a number
`of “client” computers,
`typically personal computers or
`workstations, communicate with one or more “server” com-
`pulers and request such server computers to perform pro-
`cessing tasks.
`
`In conventional client-server configurations, each
`[0003]
`client computeris required to be compatible in some manner
`with each server computer so that the client and server
`computers can understand one another. In some environ-
`ments, this requirement is easily met, as each client and
`server computer is of the same platform type, e.g., UNIX,
`Windows, Macintosh OS. In other environments, special
`translation protocols are implemented to permit a particular
`clicnt platform type to communicate with a particular server
`platform type.
`
`[0004] As client-server systems become larger and serve
`entire enterprises, such as large corporationsorinstitutions,
`conventional
`techniques
`for
`facilitating communication
`between and among client and server computers become
`more difficult to use, while the need for processing that is
`seamlessly distributed among the systems’ constituent client
`and server computers generally increases.
`
`[0005] For example, if a userof a particular client machine
`creates a particular report application program that provides
`a printed report of general value throughout the organiza-
`tion, it would be extremely valuable for other users, perhaps
`working with clients and servers of different platform types,
`to be able to use the report application program.
`
`[0006] Some known systems restrict processing of the
`user-created application to the user’s client computer in
`order to entirely avoid the problems caused by multiple
`platform types. Other systems process the user-created
`application on the clicnt computer but allow acccss to
`databases stored on other computers on the network, typi-
`cally by the use of a common database protocol such as the
`standard known as SQL.Input-output services are typically
`restricted either to directly attached devices or devices such
`as printers shared at a workgroup or local area network
`(LAN) level. These solutions may be adequate in some
`environments, but for applications that make intensive use
`of database or input-output facilities, such implementations
`result in significant processing delays.
`
`[0007] Recognizing the need to reduce dependency on
`platform Ltypes in distributed processing systems, a number
`of known schemeshave been developed that employa layer
`of system services and protocols commonly known as
`“middleware” that operates at a level that is above each
`computer’s operating system and network facilities but
`below each computer’s specific set of application programs.
`For an overview of such known middleware techniques, see,
`
`e.g., P. Bernstein, Middleware: A Model for Distributed
`System Services, 39 COMMUNICATIONS OF THE ACM 2
`at 86-98 (February 1996), the contents of which are hereby
`incorporated by reference as if fully set forth herein.
`
`is a
`[0008] Still absent from the knownart, however,
`system for allowing a user of a client computer to create an
`application program locally and run that application, as
`desired, either on the user’s own client computer or any
`other computer that is connected by a network to the user’s
`client computer.
`
`In addition, enterprise-wide data processing sys-
`[0009]
`tems commonly use a variety of databases and input-output
`devices, and the need remains for a system to allow such an
`application, regardless of which machine executesthe appli-
`cation, to access any such database or input-outputfacilities
`that are connected to the network, again without regard to
`the type of platform on which such facilities are imple-
`mented.
`
`SUMMARY OF THE INVENTION
`
`In accordance with the present invention, a batch
`[0010]
`processing engine includes a design tool subsystem operable
`on a client computer that creates a set of specifications in
`response to user input. A processing subsystem located
`either on the client computer or on some remote computer
`performs processing in response to the specifications. A
`middleware subsystem is used for communication of the
`specifications to the processing subsystem.
`
`In another aspect of the invention, the specifica-
`{0011]
`tions are sent from the client computer to a server computer
`for storage, and are sent from the server computer to the
`processing subsystem for processing.
`
`the network
`In another aspect of the invention,
`[0012]
`includes database facilities, and a database middleware
`subsystem directs access to the database facilities in accor-
`dance with the specifications.
`
`Instill another aspect of the invention, the network
`[0013]
`includes input-outputfacilities, and an input-output middle-
`ware subsystem directs access to the input-outputfacilities.
`
`In yet another aspect of the invention, a remote
`[0014]
`computer that is processing an application in accordance
`with the specifications sends to the client computer comple-
`tion data in response to completion of processing of the
`application.
`
`In a further aspect of the invention, a remote
`{0015]
`computer processing an application in accordance with the
`specifications sends to the client computer error data in
`response to detection of an error in processing of the
`application.
`
`In yet a further aspect of the invention, the input-
`{0016]
`output middleware subsystem selectively routes an input-
`output data stream to one of a plurality of input-output
`devices and converts the data stream to a format suitable for
`
`the selected one of the input-output devices.
`
`[0017] The features and advantages described in the speci-
`fication are not all-inclusive, and particularly, many addi-
`tional features and advantages will be apparent to one of
`ordinary skill in the art in view of the drawings, specifica-
`tion, and claims hereof. Moreover, it should be noted that the
`
`
`
`US 2001/0018708 Al
`
`Aug. 30, 2001
`
`language used in the specification has been principally
`selected for readability and instructional purposes, and may
`not have been selected to delineate or circumscribe the
`
`inventive subject matter, resort to the claims being necessary
`to determine such inventive subject matter.
`
`FIG.22 is another user interface screen for select-
`[0039]
`ing and sequencing section sort objects.
`
`FIG.23is a user interface screen for group section
`[0040]
`and variable properties.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`[0018] FIG. 1 is a block diagram of a system (100) for
`data processing in accordance with the present invention.
`
`[0019] FIG. 2 is a block diagram of a batch processing
`engine (200), in accordance with the present invention.
`
`[0020] FIG. 3 is a flow diagram of processing for a design
`tool subsystem of the batch processing engine illustrated in
`FIG.2.
`
`[0021] FIG. 4 is a flow diagram of processing for a
`processing subsystem of the batch processing engineillus-
`trated in FIG,2.
`
`[0041]
`objects.
`
`FIG. 24 is a user interface screen for aligning
`
`[0042] FIG. 25 is a user interface screen for report ren-
`dering.
`
`[0043] FIG. 26 is a user interface screen for connecting
`accumulated objects.
`
`[0044] FIG. 27 is a user interface screen for connecting
`level break objects.
`
`[0045]
`erties.
`
`[0046]
`version.
`
`FIG.28 is a user interface screen for report prop-
`
`FIG. 29 is a user interface screen for adding a
`
`[0022] FIG. 5 is a flow diagram of the terminate report
`subprocess shown in FIG, 4.
`
`[0047] FIG. 30 is a user interface screen for version
`overrides.
`
`FIG.6 is a flow diagram of the etch Section Data
`[0023]
`Records subprocess shown in FIG. 4.
`
`[0024] FIG. 7 is a flow diagram of the Process Level
`Breaks subprocess shownin FIG.6.
`
`[0025] FIG. 8 is a flow diagram of the Process Tabular
`Level Breaks subprocess shown in FIG.7.
`
`[0026] FIG. 9 is a flow diagram of the Print Objects
`subprocess shown in FIG. 4.
`
`[0027] FIG. 10 is a flow diagram of the Process Child
`Sections subprocess shownin FIG.7.
`
`[0028] FIGS. 11A, 11B, and 11C illustrate exemplary
`reports produced by system 100.
`
`[0029] FIG. 12 illustrates a user interface object librarian
`dialog screen for adding a new object.
`
`[0030] FIG. 13 illustrates a user interface batch engine
`librarian dialog screen for working with version and tem-
`plates.
`
`[0031] FIG. 14 illustrates a user interface pull-down menu
`screen for creating new sections.
`
`[0032] FIG. 15 illustrates a user interface screen for
`setting page header section properties.
`
`[0033] FIG. 16 illustrates a user interface screen for
`inserting objects into reports.
`
`[0034] FIG. 17 a user interface screen for setting proper-
`ties for constants.
`
`{0035] FIG. 18 is a user interface screen for setting
`properties for sections.
`
`[0036] FIG. 19 is a user interface screen for selecting
`business views.
`
`FIG.20 is a user interface screen for quick section
`[0037]
`selection.
`
`[0038] FIG. 21 is a user interface screen for selecting and
`sequencing section sort objects.
`
`FIG.31is a user interface screen for data selection
`[0048]
`in a section.
`
`[0049] FIG. 32 is a user interface screen fora final version
`of a report.
`
`[0050] FIG. 33 is a user interface screen for setting up
`printing for a report.
`
`[0051]
`sections.
`
`FIG. 34 is a user interface screen for joining
`
`[0052] FIG. 35 is a user interface screen for selecting
`business rules.
`
`[0053] FIG. 36 is a user interface screen for event rules
`design.
`
`FIG.37 is a user interface screen for designing a
`[0054]
`calculation.
`
`[0055]
`manager.
`
`FIG.38 is a uscr interface sercen for an expression
`
`[0056] FIG. 39 is a user interface screen for a business
`function search.
`
`[0057] FIG. 40 is a user interface screen for passing
`values in a business function.
`
`FIG.41 is a user interface screen for displaying an
`[0058]
`eventrule.
`
`DESCRIPTION OF A PREFERRED
`EMBODIMENT
`
`[0059] The figures depict a preferred embodiment of the
`present invention for purposes of illustration only. One
`skilled in the art will readily recognize from the following
`discussion that alternative embodiments of the structures
`
`and methods illustrated herein may be employed without
`departing from the principles of the invention described
`herein.
`
`[0060] Referring now to FIG. 1, there is showna system
`100 for data processing in accordance with the present
`invention. The operation of system 100 is illustrated by
`discussion of the componentparts illustrated in FIG. 1. As
`
`
`
`US 2001/0018708 Al
`
`Aug. 30, 2001
`
`illustrated in FIG. 1, system 100 includes a numberofclient
`computers, e.g., 111, 112, and a numberof server computers,
`e.g., 121-128, all of which are interconnected by a network
`150.
`
`In a preferred embodiment, client computers 111,
`[0061]
`112 are implemented using conventional personal computer
`workstations, such as conventional machines using the Win-
`dowsoperating environment. It should be noted that in an
`alternate embodiment, not all of the client computers need
`be of the same platform type. For instance,
`in such an
`embodiment client computer 111 may be a Windows-based
`machine, while client computer 112 may be a UNIX-based
`workstation.
`
`Similarly, server computers 121-128 may be of a
`[0062]
`variety of platforms. For example, in one embodimentserver
`computers 121 and 122 are conventional mid-range server
`computers operating as UNIX platform machines, while
`server computer 123 is a mainframe host computer using the
`MVSoperating system.
`
`[0063] Server computers 124 and 125 are conventional
`print servers specifically designed to provide certain types of
`printing facilities. For instance, in one embodiment print
`server computer 124 is a conventional high speed shared-
`access laser printer and print server computer 125 is a high
`speed shared access line printer. It should be noted that these
`devices may or may not operate according to a common
`protocol.
`
`[0064] Server computer 126 is a conventional server used
`as a repository of report templates as described below.
`
`[0065] Server computers 127 and 128 are conventional
`database server computers specifically designed to provide
`database facilities. In one embodiment, database server 127
`is a UNIX-based server computer implementing an Oracle®
`relational database facility, and database server 128 is a
`Windows-based server computer
`implementing a SQL
`Server relational database facility.
`
`[0066] Clients 111, 112 and servers 121-128 are intercon-
`nected by a conventional network 150.
`In a preferred
`embodiment, network 150 is implemented by conventional
`network hardware and software for implementation of local
`area networks (LANs) and wide area networks (WANs),
`providing,for instance, conventional “intranet” connectivity
`of computers 111, 112, and 121-128.
`
`[0067] Since the various computers connected using net-
`work 150 are of a variety of platform types, they cannot
`interoperate in a conventional manner. Therefore, to provide
`the features and advantages discussed above and referring
`nowalso to FIG. 2, system 100 includes a batch processing
`engine 200 implemented by the various components of
`system 100 illustrated in FIG. 1. Specifically, batch pro-
`cessing engine 200 includes a design tool subsystem 210, a
`local processing subsystem 211, a client middleware sub-
`system 212, a server middleware subsystem 213, an input/
`output middleware subsystem 214, and a database middle-
`ware subsystem 215.
`
`[0068] Design tool subsystem 210 is an application soft-
`ware program operable on client computer 111. In a pre-
`ferred embodiment, design tool subsystem 210 provides a
`user with facilities for requesting certain services from
`system 100, for instance a report of all customers whose
`
`names are stored in system 100 and whoreside in the state
`of Colorado. In response to user input, design tool sub-
`system 210 generates a set of specifications describing the
`processing services desired by the user of client computer
`111. For purposesofillustration, the example of reports is
`used for the description below, but other processing services
`are attainable in a similar manneras well.
`
`[0069] Client middleware subsystem 212 and server
`middleware subsystem 213 are used to send messages to
`other computers in system 100 through a high level appli-
`cation programming interface (API) that insulates a pro-
`grammer of system 100 from concerns about platform
`differences among the various computers of system 100.
`These conventional middleware subsystems send datafiles
`and launch processes across system 100 and also receive
`message