Oracle Forms Conversion in one third, or less, of the usual time needed? The automatic conversion process covered in this walk-through is executed in seconds! Allowing you to concentrate on the business logic to make it a 100% fully functional form after this initial conversion.
Oracle Forms Conversion to QAFE
For the Oracle Forms Conversion we use tools from Oracle itself to convert forms in FMB format or from Oracle Designer into a QAFE application. The process is more or less the same from both sources:
FMB Conversion
- The user provides the FMB files, the attached libraries and the filter rules to the QAFE Conversion Tool.
- The user chooses what components are going to be converted (blocks, tool bars, etc.).
- The information is extracted from the FMBs and their libraries (if there are any).
- This information is automatically analyzed and the filter rules are applied. Some information is not needed in the new architecture.
- The useful information is converted into statements, business actions and presentation components.
- Some business logic is added for managing the LOVs and the triggers are converted into events.
- More events are added to control the management of the data.
- Statistics are generated in the conversion process.
- The final QAML files are generated and delivered to the user with the statistics report.

Oracle Forms Builder
Oracle Designer Module Generation
- The user provides the information related to the Designer Repository and the implementation name of the modules to generate.
- The user chooses what components are going to be converted (windows, menus, etc.).
- The information is extracted from the Designer repository.
- This information is automatically analyzed.
- The useful information is converted into statements, business actions and presentation components.
- Some business logic is added for managing the LOVs and the triggers are converted into events.
- More events are added to control the management of the data.
- Statistics are generated in the conversion process.
- The final QAML files are generated and delivered to the user with the statistics report.

Oracle Designer
Example code Oracle Forms Conversion to QAFE?
Here there are several examples of FMB components that are taken into account in the migration process. Please, check the output QAML code that is attached.
Components:
FMB ? QAFE Application
<application id=“hsd0004f” name=“hsd0004f Form”>
<application-mapping-file location=“hsd0004f_tiers.xml”/>
</application>
Block ? QAFE Window
<window id=“WINDOW2″ displayname=“Find Employee”>
Canvas ? QAFE Panel
<panel name=“CGSO$CANVAS_CG$PAGE_2″>
TabPage ? Tab
<tab title=“Dagelijks onderhoud”>
LOV ? Event
<event id=“loadLOV_HSD0004F_WINDOW_LOV_CGFK$EMP_DEP_ID”>
<store name=“$OFFSET” value=“0″/>
<store name=“$PAGESIZE” value=“1″/>
<business-action ref=“HSD0004F_WINDOW_LOV_CGFK$EMP_DEP_ID”>
<in name=“DEP_ID” ref=“HSD0004F_WINDOW_EMP_SELECT_BASETYPE_HSD_EMPLOYEESOut.DEP_ID”/>
<out name=“loadLOV_HSD0004F_WINDOW_LOV_CGFK$EMP_DEP_IDOut” ref=“HSD0004F_WINDOW_LOV_CGFK$EMP_DEP_IDOut”/>
</business-action>
<set component-id=“EMP$DEP_ID” ref=“loadLOV_HSD0004F_WINDOW_LOV_CGFK$EMP_DEP_IDOut.EMP$DEP_ID”/>
<set component-id=“EMP$L_DEP_NAME” ref=“loadLOV_HSD0004F_WINDOW_LOV_CGFK$EMP_DEP_IDOut.EMP$L_DEP_NAME”/>
</event>
Static LOV ? DropDown
<dropdown id=“QF_EMP$JOB” name=“JOB” tooltip=“Enter value for Job”>
<item id=“1″ value=“CLERK” displayname=“CLERK”/>
<item id=“2″ value=“SALESMAN” displayname=“SALESMAN”/>
<item id=“3″ value=“MANAGER” displayname=“MANAGER”/>
<item id=“4″ value=“ANALYST” displayname=“ANALYST”/>
<item id=“5″ value=“PRESIDENT” displayname=“PRESIDENT”/>
</dropdown>
Item ? TextField
<textfield id=“QF_EMP$NAME” tooltip=“Enter value for Name” name=“NAME” max-length=“10″ min-value=“0″ max-value=“20″>
<value/>
</textfield>
Item ? Button
<button id=“BUTTON_FOOTER$NEXT_BUTTON” displayname=“Volgende” tooltip=“”/>
Item ? Checkbox
<checkbox id=“TAB2$ADR_LOCAL_IND” checked=“true” displayname=“Lokaal” tooltip=“Geeft aan of dit een lokaal adres is” name=“ADR_LOCAL_IND” checked-value=“Y” unchecked-value=“N”/>
Item ? Image
<image id=“SYSTEM_BLOCK$ERROR_FLAG” tooltip=”"/>
Item RadioButton ? Choice
<choice id=“CANVAS4_CIVIL_STATE”>
<choice-item id=“CANVAS4_CIVIL_STATE_choiceItem_1″ value=“S”>
<label>Single</label>
</choice-item>
<choice-item id=“CANVAS4_CIVIL_STATE_choiceItem_2″ value=“M”>
<label>Married</label>
</choice-item>
</choice>
Date Item ? Textfield type date
<textfield id=“QF_EMP$HIRE_DATE” type=“date” tooltip=“Date of hire” name=“HIRE_DATE” max-length=“30″ min-value=“0″ max-value=“20″>
<value/>
</textfield>
Item ? Label
<label displayname=“Name” class=“bodyText”/>
Trigger ? Event
<event id=“WINDOW2_CG$AI_FIND_onclick”>
<comments>/* CGAP$OLES_SEQUENCE_BEFORE */
begin
qms$event_item(&apos;WHEN-BUTTON-PRESSED&apos;);
qms$find_block.find;
end;
</comments>
<listeners>
<listenergroup>
<component ref=“CG$PAGE_2_CG$AI_FIND”/>
<listener type=“onclick”/>
</listenergroup>
</listeners>
</event>

Example of the output conversion (QAML code)
