January 17, 2011

Versioning forms and comparing sourcecode

Comparing sourcecodes of different versions of the same FMB is very important while developing an application or during maintenance.

If you want to store all versions of your FMB's, then they are two ways:

Manual versioning

Each version of all files is stored under its name plus the versionnumber. E.g. emp_27.fmb, emp_28.fmb, ... In this case "emp" + "_27" + ".fmb".

Parallel to each version you store the textversion of the FMB, emp_27.txt, emp_28.txt and so on. You get the textversion in forms through Edit-Administration-"Object list report".

For viewing the changes between two versions you can use tools like Beyond Compare, my favorite compare tool.



Using Subversion, Git or another VCS

Using a version control software is the other approach. But here we have the problem, that storing the binary file in tools like Subversion didn't solve our origin problem, finding sourcecode differences between two versions. Storing the textversion of the binary FMB plus the forms FMB is here the best practice for the check-in.

If we now want to see the changes between two version, we can easily use the builtin features of the versioning tool:


just use it
Gerd

January 11, 2011

The future of Oracle Forms

In the last days of 2010 the German Oracle User Group asked me to write an article for the april edition of their magazin.

First I thought, that I write a normal deep technique article like all the others in the last years.

But then I reconsidered and found a better topic: "The future of Oracle Forms"

This article has two main parts. The first one gives an outlook, what Oracle integrates in the new Oracle Forms 12 release and the second part is result of a german wide poll, which I start this week.

The poll should give us an overview, what the german forms developer think about their development tool, which version they actually use, how long they work with Forms and what they think about the future of Oracle Forms

I'm very interested in the results of this poll
Gerd

September 27, 2010

Upgrading IE in the local development environment

If you ever have a stable running IE 6.0 or 7.0 for your Oracle Forms development and you think: Let's use the IE 8.0 or 9.0.

Then you may run into these problems:

After the IE 8 Installation you run your application through the Run-Button in the Forms-Builder and see this:


oh no... what an ugly URL you think...

Now we have to find the problem:

First point is, that the JInitiator isn't running against the IE 8 and we have to switch to an alternative. OK let's use the sun-plugin.

Second pitfall may be, that switching to the new "config=my_sunconfig" didn't run with the local forms developer, although you can run the main application on the Application Server.

This problem occurs, because you may forgot to check the formsweb.cfg on your local machine.

After changing the environmant to sun-plugin-parameter-values there might be another problem, but only in seldom cases: Under edit-preferences you can set the path for your Internet Explorer. Check, if this is correct, or change it to the new IE 8 destination.

And now have fun with your IE 8
Gerd

July 09, 2010

New Layout

I updated the templates a little bit of my talk2gerd. These are the new features:

Followers

- all followers of my blog are welcome here

Labels

- here you can see all the different labels I used in my blog. Click on a label and you see only the postings with that label on it.

have fun
Gerd

June 09, 2010

I just submitted "Forms 11g and the iPhone" for the DOAG Conference 2010

In some weeks the Call for Papers for the German Oracle User Group (DOAG) Conference 2010 ends.

My plan is to hold a presentation about Forms 11g and the iPhone.

The main topic of the presentation is, how you can extract modules from big Oracle Forms Applications and recreate them in a mobile version on the iPhone.

The presentation-testcase shows, how much more efficient it is to have a time-reporting on your mobile device versus the old technique, where this app was part of a big legacy application.

Another topic is to show, how you can communicate bidirectional between Forms 11g and the iPhone App. Using Advanced Queueing in Forms and Push Notifications in the App is the solution.

5 months to go and I hope I get a slot in the conference.
Gerd

May 05, 2010

Migrate your charset to UTF8, annotation to step 3

After migrating to UTF8 you may have problems with your report-server. This is, when your reports cannot be displayed and internally the server throws a "Canceled as server is shutting down"

With UTF8 you need a bigger cache-size in "report server-parameter". Easiest way, when you run into problems, double up the value of the parameter.

Try it
Gerd


Back to part 3 of the article

April 28, 2010

Migrate your charset to UTF8, step 3

Applications without Reports are useless :-)

So we have to change some things in the Reports Environment to enable UTF8 in PDF-Output.

First

you have to edit in your OAS Report-Server the report-config:




Add one "environment id" per section. A section is in this example development, test and production. After that, each section has defined it's own NLS_LANG and report-path.

Second

You can use the new sections through Forms. Before starting the report you add another parameter to the paramlist:

Add_Parameter (V_ParamListe, 'ENVID', TEXT_PARAMETER, 'NLS-PROD');

Now you can control the NLS_LANG of your reportserver.


Third

Last checkpoint for your reports is the correct mapping between your fonts and your TrueType-Fonts (in this case we have a windows-system)

Edit the file "uifont.ali" in the directory \tools\common and add the following lines in the section [ PDF:Subset ]

Arial..Italic.Bold..             = "c:\windows\fonts\arialbi.ttf"
Arial...Bold..                   = "c:\windows\fonts\arialbd.ttf"
Arial..Italic...                 = "c:\windows\fonts\ariali.ttf"
Arial.....                       = "c:\windows\fonts\arial.ttf"

"Courier New"..Italic.Bold..     = "c:\windows\fonts\courbi.ttf"
"Courier New"...Bold..           = "c:\windows\fonts\courbd.ttf"
"Courier New"..Italic...         = "c:\windows\fonts\couri.ttf"
"Courier New"                    = "c:\windows\fonts\cour.ttf"

"Times New Roman"..Italic.Bold.. = "c:\windows\fonts\timesbi.ttf"
"Times New Roman"...Bold..       = "c:\windows\fonts\timesbd.ttf"
"Times New Roman"..Italic...     = "c:\windows\fonts\timesi.ttf"
"Times New Roman"                = "c:\windows\fonts\times.ttf"


In this example windows has its fonts in the directory c:\windows\fonts\

have fun
Gerd

To be continued with Migrate your charset to UTF8, annotation to step 3

Back to part 2 of the article

April 07, 2010

Migrate your charset to UTF8, step 2

Now, after changing the NLS to UTF8 we may have problems with hotkeys.

That's because the nls-change to UTF8 will now use a different resource-file. Instead of fmrweb.res the fmrweb_utf8.res is used. The resource-files are located in the forms-home-directory.

If you have used "term" in your formsweb.cfg - otherparams, then you point hardcoded to a specified file. Here you have to change the value of the parameter or you have to exchange the content of the file.

e.g. changing the value of the parameter:
old: otherParams=term=\fmrweb.res
new: otherParams=term=\fmrweb_utf8.res

After this changes you can use the same hotkeys like before


To be continued with Migrate your charset to UTF8, step 3

Back to part 1 of the article

March 31, 2010

Migrate your charset to UTF8 in 3 steps

What do we have to do in your forms application, when the database in the backend is upgraded from a single-byte charset to a UTF8-charset.

First Step

Make a backup of your forms-sources, your local forms installation and your application server configs.

After that change the NLS_LANG in your registry. You can create a backup of the parameter, through creating a new parameter named "NLS_old" with the value of the old NLS_LANG-value. The new value of NLS_LANG is for example "GERMAN_GERMANY.UTF8". This change is for your local forms builder, when you recompile your forms sources.

Now we can edit our local default.env. If there is a line with the NLS_LANG, then change the value to the UTF8-value (see above) or create a new line with the NLS_LANG. This change is for our local OC4J instance only.

Do the same change on the application server (use the OEM for edits)

These changes were the basic environment-changes we need for UTF8.


To be continued with Migrate your charset to UTF8, step 2

December 03, 2009

The iPhone Developer Conference was great

The last two days, when I visited the conference, I got tons of new infos and ideas around the iPhone and how to create applications on it.



I think, I'll create a showcase for iPhones, where you can manipulate data through an App and parallel you see those updates automatically in a forms application. Using the newest version Forms 11 with AQ's is the basis of the showcase.

Gerd

November 30, 2009

iPhone Developer Conference in Cologne

Tomorrow starts the german's iPhone Developer Conference in Cologne.

I'll have a close look, if this is the new way of creating apps. And maybe I create the first app which can interact with Oracle Forms :-)

Let's see
Gerd

October 19, 2009

Blogging via Google Wave - First Test through email

Google wave is cool. Each day I find new things in this platform.

And now is the time to test the connectivity between google wave and my blog.

In this first test I write an automated email to the blogger-account. And the second test afterwards is from within the wave

I need luck
Gerd

September 15, 2009

The presentation for the DOAG conference 2009 is finished

The title is: "Shout out: Oracle Designer vs. SQL Developer Data Modeler".

I'll demonstrate in the presentation the advantages and disadvantages of both tools. I base the demonstration on an EMP / DEPT example, which I design live.

Chapters of the white paper are

- Domains
- ER-Design
- Transfer ER to DataModel
- Data Modeling
- Generating DDL-Scripts
- Reverse Engineering
- Guaranteed Future

The day after the presentation I'll upload the paper to my download-portal on google-code

Gerd

August 31, 2009

Forms Debugger - hidden Feature

The Forms 10g debugger is much better than the Forms 6i debugger. He is completly new written and has the ability to debug remote. So you can look into a running session of an user and search for errors. This is in the new web-environments a powerful method to find problems.

And that's only one aspect of the new debugger.


The debugger works in two different modes: The stop-mode is well-known, because you can use there all functions of the debugger. He is active, while you investigate the code. You can work in this work, through a breakpoint e.g.


The run-mode is the other one. He can be found only, while the form is running in the foreground.


And at that point you can press the break-button, which is one of the most interesting features in the debugger. It creates a breakpoint dynamically in the next line of code, which will be executed.

So, if you press the button, nothing happens. If you then return from the Forms Builder back to the runform, the next event in the form starts the debugging-process. And then the debugger shows you the first line of code in that trigger, which will be executed next. So you don't have to think to much, where to set breakpoints and so on... just use the break-button.

That's my tip of the day
Gerd