We've come a long way since then...
Today, Transformation is performed against any number of controls on a Form and it generates COBOL code in the code-behind that invokes methods of a provided "GUI Support" Class that can apply required actions on the new Windows Forms controls. This "architecture" means that we can support ANY control that is provided by PowerCOBOL (or even third party controls, provided they are COM compliant). For us, it is a matter of making the control known to Transformation and adding equivalent methods for it into the GUI Support Class. For users, if a control is used rarely and it is not supported by the tool, it requires having the GUI Support Class updated to support the control and then manually adding COBOL invokes of the GUI Support Class into the COBOL code-behind. (Advanced users can write this support themselves; we will provide the C# source code for the GUI Support Class on request.) Or, you can outsource it to us or one of our agents.
PRIMA is a small company and we have limited resources to provide support for ALL the POSSIBLE PowerCOBOL controls, so we chose to support the most used ones. The table below shows what is supported "out-of-the-box", but remember that it is possible to ADD further support if you need it. (Only registered copies can be enhanced.)
|PCOB2NET Version: 4.1+ - Implemented controls/objects/functions|
|Sheet||Form||100%||MAIN and SUB-Forms are supported. "Caption" becomes "Text" automatically.|
|Arrays||Arrays of Controls||100%||Arrays of GRID type controls are NOT currently supported|
|COBOL CALL||passed through||100%||Support is provided for both static and dynamic CALLs.|
|COBOL COPY||pre-processed by the tool||100%||#INCLUDE is passed through to NetCOBOL.|
(We recommend replacing all grid type PowerCOBOL controls with this, and the tool can do it automatically for you.)
|it's here NOW!
(with Release 4.1+)
|This control will provide advanced list and cell manipulation.
(It can optionally replace List Box, List View, and Table controls.) DGV supports icons and checkboxes for all of the above. It also supports "Numeric(a)" columns and supports the PowerCOBOL "EnsureVisible" method.
|Embedded SQL (ESQL)||passed through||100%||The PowerCOBOL database and ADO controls are currently not implemented and would need CUSTOM* support.|
|EVENTS||see "Wiring", below||100%||The WinForm recognizes and responds to the SAME events as the PCOB sheet|
|EXTERNAL||Shared objects||100%||Fields are shared automatically across Forms|
|Form manipulation||Form handling||100%||OPENFORM, CALLFORM, and CLOSEFORM are fully supported as in PowerCOBOL.|
|Flat file support||passed through||100%|
|ISAM file support||passed through||100%||you can migrate these files to an optimized 3NF RDB with another part of the Migration toolset.|
|List Box||ListBox||70%||icons are not supported (see DGV, above)|
|70%||Standard reporting modes are supported. For manipulations with headings/sorting/edits etc., we recommend DataGridView (see above).Numeric(a) fields are handled as strings.* "EnsureVisibility" method is not implemented.|
|MCI||CUSTOM*||5%||Control is recognised but not supported.|
|Procedures (NON-event)||passed through||100%||Non-Event procedures become methods in the new code-behind.|
|SQL Host Variables||Embedded SQL||100%||EXTERNAL HVs are shared across Forms if required.|
|TAB||TabControl||100%||Needs manual help during Form Design.|
|Table||TableLayoutPanel||50%||May require further CUSTOM* GUI Support.
Normal tables can be easily replaced with DGV.
|Tool Bar||ToolStrip||70%||May require further CUSTOM* GUI Support.|
|Tree View/Nodes||TreeView||30%||Control is recognised and Nodes are treated as Foreign Objects, but will require further CUSTOM* GUI Support.|
|Wiring for events||Windows wiring||100%||The tool detects all PowerCOBOL events and wires support for them into the generated WinForm.|