Keep up with our latest news, views and comments on the Snippets page!
"The future of Forms is only just beginning!"
Frequently asked questions
The user experience
Can I run my Forms / Reports applications over the Internet from my browser?
Yes, provided that your browser is reasonably up-to-date, and standards-compliant. This applies to all supported Forms versions - currently 6i to 11g. We routinetely test on Internet Explorer, Firefox, Chrome and other browsers, across numerous versions.
Which browsers are supported?
Support is currently focused on the three most popular browsers: Internet Explorer, Firefox and Chrome. But we expect that YoForms will work just fine on any modern browser as we are using a minimum set of features, and all the main browsers are based on the same architecture as those listed.
Do Forms / Reports applications run through a browser plug-in, like Oracle Forms 9i-11g?
Do I need to have any installed software on my local machine to run YoForms etc, like Oracle's JInitiator?
No. Just the browser. You don't need to have Java installed, either.
Can I run my Forms / Reports applications on my mobile device?
I would like to be able to vary the number of displayed records at runtime. Do you support this?
Yes, so many people are asking for this that we are including it in Release 1.0. Using our 'data-view' feature, users can see all the data returned from a database. Existing WHERE and ORDER BY clauses in the SELECT query can also be re-defined.
Can I re-order the rows in a data block in a live form?
Yes. Mouse over the title of a column in a data block, and a pair of small 'up' and 'down' arrows pops up. Just click on the appropriate arrow to re-order the rows. This selection takes priority over any existing ORDER BY clause specified in the form.
Can I edit the WHERE clause that applies to a data block in a live form?
Yes. Mouse over the title of a data block, and you can select a text box that contains the existing WHERE and ORDER BY clauses. You can edit these clauses and execute the modfied query.
Are the existing query-mode features of Forms supported?
Yes. In query mode you can use wildcards (_%), the comparison operators (<, <=, >=, >, <>) and the 'magic' characters (&, #). But you will probably prefer to use our facility to edit the WHERE and ORDER BY clauses directly (see above), as this is more intuitive and straightforward.
Forms gives few visual cues when you go into query mode - what about YoForms?
On entering query mode the query data block only is shown at full brightness - the remaining form area is greyed out. This gives a strong visual signal that you are in query mode, and which block is live for QBE data entry.
What's the effect on performance?
You should experience a like-for-like improvement in performance as our software is more efficient than Oracle's and has been designed to minimise HTTP traffic. But database accesses will not be speeded up so performance improvements will be less obvious for database-intensive applications. Actual performance will also depend on the speed of your Internet connection, and server response times.
What about browser performance? My browser often runs very slowly when running script-heavy pages!
Will my application look and work just the same as before?
Yes. Release 1.0 offers three choices of look and feel: 'traditional', based on 6i under Windows XP®; 'web-forms', similar in appearance to the 9i-11g Oracle plugin; and our contemporary 'Yo!' look and feel, which renders your application in a clean, modern web style similar to today's top internet applications.
Any look and feel can be applied to any supported Forms version - so you can make your 6i apps look like 11g, or the other way round. Or better still, cheer up your users by running all your applications on our 'Yo!' look and feel!
There's some really annoying bugs I've been waiting for years for Oracle to fix. Have you fixed them?
Yes. Because the entire YoServer suite is written from the ground up in Java, its easy for us to get it right as we go.
Can I still use function keys to manipulate a running form?
Yes. All your function keys should continue to work exactly as before - other than for mobile deployments as mobiles do not offer function keys.
I'm getting fed up with FRM-902xx error messages - do these go away under YoForms?
You can say goodbye to most of these annoying messages arising from problems in the Oracle applet (10g / 11g only). However a small number of similar errors may still arise - like FRM-92020 "target URL rejected by browser".
The developer viewpoint
So I just load up my FMB, MMB and other files to the server and run the application under YoForms / YoReports?
Yes. You also have to configure the database connection, and select preferences, for example your choice of look-and-feel.
I want to maintain my forms source as XML. Is that supported?
Yes, you can maintain your source as XML if you prefer, and this is the best format for YoDeveloper. We think that XML is preferable as it is a plain text format that allows you to record version information, and is compatible with numerous versioning / source control tools.
What if I want to keep my application on the database, and run it from there?
Yes, we support that too. Actually this is a smart move as the database will take care of many important things for you, including security, regular backups, source code control and distribution. If you keep your application on the database this is best done as XML, allowing you to use the powerful capabilities of Oracle's XML DB for source interrogation, editing, management and control.
Is debugging improved?
Yes - massively. YoDeveloper includes a line-by-line debugger so you can precisely track the operation of a form or report, and quickly identify problems. With our 'treeview' facility you can also monitor the values that underlie any running form, and 'live-edit' those values, monitoring the resulting changes in another browser tab. We also provide live access to the underlying XML that contains the entire state of a form at any point in time. And we provide an event log that is updated on the fly as you use an application.
How does all that work exactly?
YoForms holds the entire state of your form in an XML tree resident on the server. You have a choice of two views of this XML - a "tree view" similar to what you are used to in Forms Developer (only it also contains data values), and a direct view to the XML source. These can simply be viewed in a separate browser tab or window to the application itself, and they are updated live as the application is used.
And the event log?
The event log also opens up in its own browser tab or window. It records a range of events, such as trigger execution, SQL queries to the database, any database errors and ORA codes, YoSQL errors ... This adds up to a powerful tune for tracking the execution of an application and identifying the cause of any problems.
How long does it take to test out a 'tweak' on a form?
Using YoDeveloper's 'live-edit' capability, you can test out the effect of an adjustment to a form as soon as you have made it. This speed of response enables a significant productivity increase while creating or editing forms.
I like the sound of that 'live-edit' feature - how does it work?
You can be editing code in YoDeveloper in one browser window or tab, while running your application in another. When you save / apply your changes, they are immediately reflected in the application. This can also be done between, say, a user at a remote location and a developer.
Can I still use the Java Beans I have used to extend my forms?
Yes. Your Java Beans appear in your forms just as they do already. The Java classes needed to make them run are downloaded to the browser automatically when needed. There is no need to install JInitiator (or anything like it), but you do need to have Java installed on the client computer.
I'm currently upgrading my Forms 6i applications to 9i /10g / 11g. Need I bother?
No. If you intend to deploy your 6i application using YoForms, then there's no need to modernise to 9i-11g as all these versions run equally well in YoForms.
What about graphics in my forms?
In Oracle Forms, graphics definitions are stored as binary in OGD files. We do not know how to decode them (if you do, please let us know!) so we are rebuilding graphics from scratch - and improving them in the process. Graphics definitions will be stored as XML so they will be readable, editable and susceptible to source code control. Explicit support will be provided for segmented time series, allowing data to be displayed by hour, day, week, month, year etc.
Can I integrate my various applications which use different versions of Forms?
Yes, all your applications in different Forms / Reports versions can be brought together and run from a single menu. They can also be given a single look and feel.
What happens to all the PL/SQL® that's embedded in my application?
We run it using our own 'Yo/SQL' compiler / runtime. Because it is written in pure Java it runs faster than Oracle's PL/SQL. Moreover we provide a 'tree view' of all variable values so these can be monitored while executing a program a line at a time - a very powerful debugging tool.
What about the PL/SQL in my stored procedures?
This PL/SQL is stored and run on the database, and will continue just as before.
Are you including other new features?
Our first priority is to create an efficient, stable software engine to render Forms / Reports / PL/SQL applications fast and accurately. Having achieved that, we will be led by our users and partners in terms of where our products go next.
So will you fix all the bugs in the Oracle Forms / Reports software?
Yes, we will fix the bugs. But we will also reproduce some of Oracle's bugs to allow applications to run exactly as before. Then it will be up to you to turn bug-fixes on or off in your configuration.
Can I program function keys to do what I want?
Yes. Function keys will inherit standard function key mappings from the chosen look and feel, but these can all be overridden.
In a careless moment I once programmed Forms into an infinite loop and it took a lot get out of it! What will YoForms do?
The default behavior if you accidentally program an infinite loop / infinite stack will be for that particular YoForms session to crash, but leaving other sessions / Java applications unaffected - that's how Java handles the problem. So that's already a lot better than Forms. But we also try to detect the problem before the session crashes, so we can bring the session to a graceful close complete with a helpful error message.
Does it make sense to develop new applications for YoForms / YoReports?
Yes. Oracle Forms / Reports is in many ways a wonderful system, that allows skilled developers to quickly construct powerful, secure, mission critical applications. As this system has aged its weaknesses have become apparent - but YoForms, YoReports and YoDeveloper have overcome those weaknesses and are poised to take centre stage for the development and deployment of high-end web systems in e-commerce, e-government, social networking and cloud computing.
How much does YoForms / YoReports / YoDeveloper cost?
Our main purpose is not to compete with Oracle but to offer an alternative light-weight platform that complements Oracle's offerings by filling in the gaps in their coverage. So we hope that users users are principally motivated to use our products based on, for example, their ability to deploy applications to mobile platforms, rather than by price advantage. However our pricing will be competitive. Full details will be published on our website prior to Release 1.0.
What is your licensing model?
Every licence to use YoServer products provides for a maximum number of concurrent sessions. We charge more for a greater number of concurrent sessions, but as the number rises, the per-session cost reduces. We think this new licensing model is fairer and easier to administrate than the 'named user' or 'processor' approach, and better suited to customer needs.
So no more 'named user' and 'processor' licenses?
You got it.
What happens when the number of sessions hits or exceeds the maximum number for my license?
The software responds to small breaches of the maximum number of sessions with a warning message to the systems administrator. In the event of larger breaches, the administrator can specify whether to force the least current sessions to close, or to block new logins.
Can I save money on middleware licenses?
If you are on a server-based version of Forms (such as 10g), you will no longer need to run Oracle Application Server or WebLogic in order to deploy your Forms / Reports applications. This may save money, but will depend on the details of your specific licenses and software configuration.
Can I save money on developer licenses?
Initially, probably not, since YoDeveloper will not offer a complete development environment. But in later releases that may change. YoDeveloper is a server-based application that itself runs on YoForms, rendering to the browser. Under our licensing model, a YoDeveloper session counts just like any other YoServer session.
Can I save money on database connections?
Connection pooling is provided as standard. This should provide more efficient use of system resources, however Oracle licensing policies mean that few if any users will reduce licensing costs.
Can I save money on hardware?
YoForms and YoReports have a very light memory footprint compared to Oracle Forms / Reports, and demand fewer CPU cycles to execute operations. Using YoServer products you should therefore be able to achieve either:
- better performance from your existing hardware, or
- similar performance from less powerful hardware.
What other cost implications should I bear in mind?
The greatest benefit is that your existing Oracle applications can be deployed as-is to mobile devices, and used on any client machine with a browser with no need for other installed software, all with no need for costly software migration or re-writes.
Longer term, users can also be confident of bright future for their applications in terms of support, maintenance and new features - so the huge economic and intellectual investment embodied in your applications can continue to power your organisation into the future!
The software environment
Do I still have to use Oracle Application Server® / Web Logic® to run my Forms / Reports / PL/SQL® applications?
No. You can use any server that supports JEE6 Enterprise Java®. Of course this includes Oracle Application Server / WebLogic, but also a choice of free / open source servers such as Apache Tomcat® - which we are using for development.
What Java environment do you recommend?
We are using JRE 5.0 or later from Sun, but any JRE compatible with your application server should work.
What versions of Forms are supported?
In our first release we support Forms versions 6i and 9i-11g. We will later add support for earlier versions such as Forms 2, 3, 4.5, 5, since there are still numerous applications in use based on these old and unsupported versions.
So I can use Forms 6i applications over the Internet?
Yes. Using YoForms, existing 6i applications work over the Internet without alteration - and integrate with 10g / 11g applications too. The same will apply to earlier Forms versions.
Do you support Reports as well as Forms?
Yes, this functionality is contained in YoReports. YoReports will be released together with YoForms, since forms and reports are often combined within applications.
Have I got to go on using Oracle tools for development and maintenance?
Our Release 1.0 of YoDeveloper will not include a complete application development environment, but will include some great features such as line-by-line debugging, and our 'treeview' facility which gives access to all the values embodied in a running form, and allows live editing of those values. So - at least for developing new applications - you will probably continue to use Oracle development tools.
Do you offer client-server versions of your YoServer products?
No. We think most users want to be able to run their applications over the Internet, and there are considerable advantages in a server-based deployment. Also, using YoForms is very similar to using Forms 6i (in client-server mode) in terms of the user experience. And of course, you can use YoServer products over a local network.
Do you support WebUtil functions for accessing the local machine?
No. WebUtil - provided as part of Forms 10g - provides direct access from the application running in the browser to the local machine, its file system and programs. It can only do this by way of the JACOB program that has to be installed on the local machine to support Forms 10g. YoForms does not use any such installed program so WebUtil functions are not provided.
It is also highly undesirable from a security viewpoint to allow access from the browser to the local machine, so we would not want to support WebUtil anyway. Instead we are looking to the kind of things that WebUtil is used for, such as uploading or downloading documents, or launching programs on the local machine. These same purposes can be achieved using standard HTTP protocols and the local operating system, in a secure way.
Do YoServer products connect to Oracle database in the same way?
No. We use JDBC to connect to the database, while Oracle Forms uses dedicated database connections. Connection pooling is also available within YoServer products. One effect is that you are likely to need fewer database connections.
Do you support Oracle XE®?
Yes. If you can run your current application on Oracle XE (Oracle's free, size-limited and function-restricted database), you can also use XE when running or developing the application in a YoServer environment. Even if you are not using XE currently you may be able to do so under YoServer. The main restrictions on XE are: a size limit of 4GB (10g) / 11GB (11g) of user data; and single-CPU operation.
Does that include support for Oracle XE 11g with Forms 6i?
Yes. We have heard reports of compatibility problems between database XE 11g and Oracle Forms 6i because XE defaults to the AL32UTF8 character set, and Forms 6i can only be used with UTF8. According to the XE 11g installation guide XE 11g can be set to work with UTF8 however some users have obviously had difficulties with it. But as far as YoForms is concerned, there is no compatibility problem - you can run your 6i application under YoForms with XE 11g using whatever character set you define during XE installation.
Do you support databases other than Oracle?
We do not provide explicit support for non-Oracle databases. This is because Forms uses many features specific to Oracle database which are not found in other databases - like ROWID. To use a non-Oracle database you are likely to need to rewrite many of your SQL queries. This is not a service we provide, however we have specialist partners who do.
But might you support other databases in the future?
If significant demand emerges to support other databases, that is a future possibility. Some Oracle-specific database functionality can be replicated in software. We could also support the development of new applications in YoForms / YoReports that avoid features specific to Oracle database, and will therefore work on other databases. But this will all depend on user demand.
So for the time being, we are sticking purely with Oracle databases. We also think that with XE 11g supporting up to 11GB of user data, there is now considerably less reason to consider moving to other databases on grounds of cost.
Does YoForms support record locking?
Yes. Full record locking is implemented, reproducing all the locking options offered in Oracle Forms, including multi-user support.