Presentation is loading. Please wait.

Presentation is loading. Please wait.

© 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective.

Similar presentations


Presentation on theme: "© 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective."— Presentation transcript:

1 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. TransForge – why and how

2 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 2 Abstract Used properly, TransForge makes it significantly easier to migrate to a client server environment. While it is significantly more difficult to go to the web, web access can still be enabled by use of technologies like Citrix. This session will provide a review of the merits of Transforge, and also what challenges will be faced and what can be done to achieve the highest quality code possible.

3 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 3 Biography Simon Lovell Currently at the Environmental Protection Authority 4 years OpenROAD 4.1 experience Worked on two TransForge conversion projects 9 Years experience with Ingres

4 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 4 Agenda Why Transforge –Transforge versus A to W Two approaches to TransForge What Transforge does and doesn’t do Using the conversion engine Using a post processor What must be done manually

5 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 5 Why use TransForge Part 1 of 2 What are the alternatives –Do nothing Risks the application being replaced –Upfront Clunky Also not cheap –Rewrite Very expense and risky –A to W Low budget and low return

6 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 6 A word about A to W A to W was mostly look, not much feel. Said to have worked straight out of the box Enforced the old tabbing sequence Must have used fixed sized fonts or it would have looked terrible Further development looking forward could have taken advantage of GUI features Ideal conversion would work like this on frames which are seldom used, but not for the 20% which are 80% of the use

7 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 7 Why Transforge Part 2 of 2 For software companies –More likely to sell the product –Less likely to lose customers –Development is likely to be cheaper –Happier clients and developers For others –Life extension –Happier and more productive users and developers

8 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 8 Two approaches to TransForge Do as little as possible Do as much as possible –Use GUI features Option fields (drop downs) Toggle fields (check boxes) Radio fields List fields List view fields Not much difference in risk or effort Big difference in result

9 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 9 What does TransForge do (1 of 3) Global Variables and Global Constants –Converted one for one Database Procedures –Converted one for one 3GL Procedures –Has a wrapper class created –Also converted one for one

10 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 10 What does TransForge do (2 of 3) 4GL Procedures –Converted into user classes –All local procedures become methods –Main procedure to start method –Entry point invoke method created –Inherit from a supplied class

11 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 11 What does TransForge do (3 of 3) Frames are similar to 4GL Procedures –A frame and a user class is created –Extra user class per table field –Class has a method for every activation, local procedure and another for the Initialize block’s code

12 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 12 What Transforge doesn’t do Enforce the tabbing sequence Use a fixed size font Cater for sub menus Provide for server side reporting Find the correct data type for 3GL Procedures’ parameters Forms validation is lost Activate=1 versus Activate=0 information is lost Qualification clause not handled

13 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 13 Using the TransForge engine (1 of 2) The Object Request Broker (ORB) –Allows different code to run at different sites –Recommend you turn this off Discovery report –Map as many speed keys as possible –Commonly used activations like close or save should go to the top toolbar and the menu, less common ones should go to a bottom button bar and the menu

14 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 14 Using the TransForge engine (2 of 2) Background colour for changeable fields should be CC_SYS_WINDOW Enable option to capture activate values Should have an indication for mandatory Ensure all forms are part of application

15 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 15 Using a post processor (1 of 5) Use the undocumented get_appl procedure Update the style sheet –Use FrameSource’s undocumented fielddefaults attribute –Should store all presentation standards Update exit and childexit events to setvalue and childsetvalue respectively

16 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 16 Using a post processor (2 of 5) Set all entry fields’ IsMandatory to false Name free trim associated with entry fields Add calendar for changeable date fields Make all varchar entry fields wider Remove tab sequence numbers Add a print screen menu item

17 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 17 Using a post processor (3 of 5) Update toolbar’s field scripts –Remove ChildClickPoint code –Update frame’s UserEvent to be click –Add main menu button Remove.invoke(…) methods and modify all calls of.invoke (…) to call.start() for former procedures or.CallGUI() for frames. Use attributes for parameter passing Move “configure” methods to constructor Consider passing current row in table field events

18 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 18 Using a post processor (4 of 5) For all table fields –Set the UpdateOps to OP_APPEND –Add an InsertRow event –Mixed case all columns’ Title –Expand entry field’s width to column’s width –Add code to create a dummy row as required

19 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 19 Using a post processor (5 of 5) Table fields (cont’d) –For custom highlighting Set IsHighlighted to false Set all columns’ HasCellAttributes to true Add ChildEntry and ChildExit events Add row number variable

20 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 20 Manual Tasks for the application as a whole (1 of 2) Write procedures to load enum fields Write procedures for custom table field highlighting Sub class UIM and iconobject –Make trim invisible with entry fields –Reset ClickPoint bias in toolbar Replace main menu to allow multiple threads providing the use of global variables do not preclude this

21 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 21 Manual Tasks for the application as a whole (2 of 2) Update businessobject’s callframe statement Disallow blocked frames taking focus –Use ghost frame Include print screen dll from www.naiua.org

22 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 22 Manual Tasks for each frame Replace entry fields with GUI controls Replace any forms validation Group fields with stack and matrix fields Move mandatory validation into the save Remove code which checks movement direction Set focusbehavior for menu and toolbar Test! 6 Frames per day is fast

23 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. 23 Summary Use a post processor Still doesn’t make it easy Download presentation and review notes for code snippets If you’re still using ABF now, what are you going to do differently to not be using it in 5 years time, or out of a job?

24 © 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective companies. Questions & Answers


Download ppt "© 2005 Computer Associates International, Inc. (CA). All trademarks, trade names, services marks and logos referenced herein belong to their respective."

Similar presentations


Ads by Google