From time to time Oracle releases an EPM product that, as a developer, causes you to pivot.
The first release of FDMEE in 2013 was one such product. With Oracle Data Integrator (ODI), as the foundation on which FDMEE was built, the ability to integrate different systems and automate processes with EPM applications got turbocharged. Since FDM was VB-based, I initially thought I would be translating a lot of FDM application VBScripts to FDMEE. I’m happy to say I was wrong!
The dozen plus FDMEE projects I have worked on all fall into two categories:
- New implementations where the scripting language of choice has been Jython
- Existing FDM implementations translating VBScript to Jython. (I worked on one six-month project at a major financial institution.)
I understand Oracle wanted to provide developers an upgrade path for all the existing FDM applications reliant on VB/VBScript, but the fact that it’s a 15-year-old technology had an impact on decision-making on projects I worked on. I like VBScript, but its limitations are exposed when compared to Jython.
As a developer, you want to keep your options open in the event a client asks for additional functionality. You will box yourself in much quicker with a VBScript approach vs. Jython. Below, I’ve covered some of the pros and cons.
- Jython is based on the Python programming language and can access a large number of built-in Libraries/Functionality on UNIX, Windows, and Macintosh.
- Jython is a version of Python that runs in the Java Virtual Machine. What this means is you can import any JAVA class into a Jython program, which enables you to call your own JAVA classes or classes in the J2EE platform for building solutions.
- More on-prem/off-prem integration options — You can execute MaxL and EPMAutomate scripts, or access Cloud product APIs with Jython/Java.
- Code Re-use: You can create classes for common routines and call them from FDMEE Import, Event, and Custom scripts.
- Jython is Object Oriented which provides a more scalable structure for complex integrations and simplifies code maintenance and enhancements.
- VBScript a less robust scripting language which may limit your data integration and automation options as you add additional EPM products to the mix.
- Automation will be more kludgy and harder to maintain.
- If Microsoft drops support for VBScript in the future, Windows Server updates may break FDMEE VBScripts (as of Aug. 2019, Microsoft has dropped default VBScript support in Internet Explorer).
The above highlights the main points, but I think the key takeaway when considering Jython vs. VBScript is that Jython gives you a wider variety of potential solutions to problems customers have or will encounter in the future. It’s hands down the best option.