So this is how the ‘New Features in Oracle Forms 12c‘ presentation mentions the new Customizable ColorSchemes in Forms 12c. Thanks to Michael Ferrante, Oracle Forms Product Manager for the updates. As ever, the devil is in the detail.
Many years ago I was recommending an ERP system to a small company. We compared various vendors all with very similar features and prices. The winner was Netsuite, purely for its ability to use the colour scheme of the local soccer club! Green and Yellow became the standard for their ERP system. Colour is important but do get someone who knows about colour to configure the colour scheme. Amateurs, like myself, can look at colour and think a scheme would work when it clearly would not to most people. At worst look at a colour wheel and see how things work together. Anyway, once you have an idea of the colour scheme you need to do some file editing.
Look into the registry.dat file found in under the $DOMAIN_HOME in somewhere similar to C:\Oracle\Middleware\fr_home\user_projects\domains\pitss_domain\config\fmwconfig\servers\WLS_FORMS\applications\formsapp_12.2.1\config\oracle\forms\registry
This file has a section with color mappings for the client side java applet within which the Oracle Form will be run. I have renamed this schema to be sample_orig.
# Sample custom color scheme
colorScheme.sample_orig.description=sample_orig custom color scheme
To set the Applet to use this schema you will need to edit the formsweb.cfg file, typically found in C:\Oracle\Middleware\fr_home\user_projects\domains\pitss_domain\config\fmwconfig\servers\WLS_FORMS\applications\formsapp_12.2.1\config
Within this file set the following:-
# Forms applet parameter to configure custom color scheme
This will override the
BUT any settings made within the Oracle Form, such as by using Visual ATtributes will override the settings made in eth Registry.dat file.
The sample_orig colour scheme set above results in the following:-
Nice! No idea who dreamt up this colour scheme, but probably not one anyone would use. This does raise the question why would you change colours at this global level. The answer is to extract the colour setting outside of the programming environment, which is a good thing. It also enables different levels of development to have different colour schemes without editing any application code. i.e. you might want one colour for development testing, one for QA and perhaps another for the production system. Anyone accidently done testing updates on the live production system??
To determine which of the colour parameters set for the java applet maps to Oracle Forms items I experimented with some settings. Using the following colour settings I could determine the mapping. If you know of a mapping file please let us all know! :-
#red FIELD BACKGROUND + MENU ITEM FOREGROUND
#Maroon TOOLBAR BACKGROUND
#Yellow SCROLLBAR BACKGROUND, WINDOW HEADER BACKGROUND
#Olive MAIN WINDOW BACKGROUND
#Lime CANVAS BORDER
#White LABELS and FIELD content
#Blue HIGHLIGHTING of Current FIELD cursor is in
I have not figured out yet what the pinstripe1 and pinstripe2 set, I am sure somebody will let us know..
Lastly, my attempt at a football team – Manchester Unuited
colorScheme.manutd.description=manutd custom color scheme
which results in:-
Just a bit of fun but hopefully you will find this useful. If your Forms have colour settings within them and you want a fast and easy way of deleting theses settings across your complete Forms application let me know. I have a solution.