The Application
Download
Report
Transcript The Application
Web Forms:
The Great Leap Forward
A P Clarke
Oracle World 2003 - #36625
1
AGENDA
• The application
• The migration process
• This web stuff
• The migrated application
• Questions
Oracle World 2003 - #36625
2
The Application
Oracle World 2003 - #36625
3
The starting point
• Government agency
– regulatory authority
– issuing licences
• Core business system
• Richly-featured:
– Third party workflow
– Post Office Address validation
– Complex technical calculations
– Integration with MS Word and Excel
• Developer 1.6.1
Oracle World 2003 - #36625
4
Client/Server architecture
Host
OLE2
Database
ORA_FFI
OLE Containers
Desktop drives
Oracle World 2003 - #36625
5
Web-deployed architecture
Host
Database
ORA_FFI
OLE2
Oracle World 2003 - #36625
unix
6
Going back to the application…
• The following features will not work with
web deployment…
– Third party workflow
– Address validation
– D2KWUTIL
– Calls to .DLL and .EXE files
– Integration with MS Word
– Production of Excel spreadsheets
– Upload files
– Reading registry
…without making changes
• This is not an upgrade, it is a migration
Oracle World 2003 - #36625
7
The Migration Process
Can we build it?
Yes we can!
…er, sort of
Oracle World 2003 - #36625
8
Forms 4.5 to 9i Forms
• Conversion
– Migration Wizard
– Forms Builder
• OTN Web Site
• Remember to start OC4J!
• Icons: .ICO bad, .GIF good
Oracle World 2003 - #36625
9
Reports 2.5 to 9i Reports
• Pretty straightforward
• RUN_PRODUCT is de-supported in 9i Forms
– RUN_REPORT_OBJECT
– WEB.SHOW_DOCUMENT
Oracle World 2003 - #36625
10
Porting to Unix
• Watch out for :
– case sensitivity
– embedded file names
– directory separators
• O9iDS is less usable on Unix
• Not supported on terminal emulators
unix
Oracle World 2003 - #36625
11
Client interaction
Workflow
move to Java API
Address validation
move to new
product
File upload
Forms demo PJC
OLE Intergration
JACOB
Oracle World 2003 - #36625
• D2KWUTIL calls
???
• ORA_FFI calls
???
• HOST
???
• TEXT_IO
???
12
This Web Stuff
Zounds! This web
stuff is harder than it
looks. If only I had a
handy utility to do all
the tough stuff for
me.
But where to find it?
Oracle World 2003 - #36625
13
Introducing WebUtil
• Oracle Beta Pre-Production software
• Client side versions of old favourites
–
CLIENT_HOST
–
CLIENT_TEXT_IO
–
CLIENT_OLE2
–
CLIENT_GET_FILE_DIR
–
CLIENT_TOOL_ENV
–
CLIENT_WIN_API_ENVIRONMENT
• New features
–
WEBUTIL_FILE_TRANSFER
–
WEBUTIL_HOST
–
WEBUTIL_C_API
–
WEBUTIL_CLIENTINFO
–
WEBUTIL_BROWSER
• All straight PL/SQL calls
Oracle World 2003 - #36625
14
Limitations of WebUtil
• Uses Pluggable Java Components
• Require PJC instantiations
– Not useable in many triggers
Use timers
– Can only use in Forms, not Reports or Menus
Create one-off Forms
• Cannot get a Windows handle
• Not always the best approach
– CLIENT_TEXT_IO
– CLIENT_OLE2
Oracle World 2003 - #36625
15
So, do I have to become a Java head?
• Must know how Java CLASSPATH works
• ORA_JAVA requires some familiarity with:
– classes
– inheritance
• May need to write your own Java class
Oracle World 2003 - #36625
16
Running on O9iAS
• Current client/server apps now need O9iAS
– licensing
– administration
• Getting this wrong can kill your project
• Complex configuration
• Need experienced O9iAS admin
– Q: What killed the Reports Server?
– A: Permissions on the /tmp directory
Oracle World 2003 - #36625
17
The Migrated Application
Oracle World 2003 - #36625
18
Migrated functionality
• Through ORA_JAVA
– Third party workflow
– Address validation
• Through WEBUTIL_C_API
– Complex technical calculations
– Terrain mapping
• Through CLIENT_OLE2
– Integration with MS Word
– Production of Excel spreadsheets
• Through WEBUTIL miscellaneous
– Upload files
– Read registry
Oracle World 2003 - #36625
19
Lost functionality
• Help files
• Using Notepad to edit items
• Performance
– Using Forms to launch apps
– Using timers instead of W-N-F-I
– CLIENT_OLE2 time lag
• IDENTIFIED EXTERNALLY
• DLL transactions
Oracle World 2003 - #36625
20
Intangible benefits
• Supported platform
• Easier deployment
• Standardisation of third party products
Oracle World 2003 - #36625
21
Any questions?
[email protected]
Oracle World 2003 - #36625
22