The Importance of User Groups!

Posted in ODTUG, PodCast, Uncategorized, Webinar on April 27, 2017 by RZGiampaoli

Hi guys, this is just a quick post about the coming seminar The Importance of User Groups. In the modern, digital world in which we now live, what is the value of a user group? Can we not get the content from Google, YouTube or Oracle direct? Join Debra and Natalie as they discuss where they think the user group delivers additional value, the networking, the learning, the sharing of stories and challenges, and most of all the fun.

See you guys there.

Advertisements

Troubleshooting connectivity issues between ODI and HFM 11.1.2.4

Posted in 11.1.2.4, HFM, Knowledge Models with tags , , on April 13, 2017 by radk00

Hi all! We are very happy with the feedbacks that we are having about HFM KMs for ODI. People are downloading them and giving them a try, which is awesome! However, we know that this ODI and HFM integration process is not as simple and straight forward as we would like it to be and we generally fall into environment issues to setup the jar files, ODI agent, connect to HFM using the new Java API and so on. In order to make it easier for people to troubleshoot their issues, we are creating this post to hold all known issues that people are having with our KMs and try to help the best we can. We will keep updating it, so please keep checking.

If you have any issues with our KMs usage, please send us an email (devepm@teracorp.com.br) so we may try to help you and all the others that may be facing the same issue. Thanks all!

Error WSSERVLET11: failed to parse runtime descriptor: java.lang.NullPointerException

As we wrote in our blog post, we have two options to setup the necessary HFM Jar files:

1) Install the ODI agent on the HFM server;
2) Copy the necessary jar files to the agent folder;

Some people are getting the above WSSERVLET11 error when performing the first option, which is to install the ODI agent on the HFM server and just point the jar file locations on ODI_ADDITIONAL_CLASSPATH. They change the ODI parameters to point to the right location, but when they start the agent it fails with this error.

We are not sure exactly why it happens, but we suspect that the “absolute file path” gets too big for ODI to handle and then the path gets “truncated” at some point, making ODI to throw this error. Our suggestion is to go with our second approach and add all the jar files to oracledi\agent\drivers folders. If are not sure how to locate the correct jar files, send us an email and we will provide them for you.

Also, if you are not sure if the problem resides on your ODI agent or the Jar files, you may do a test using ODI Local (No Agent) by copying the HFM jar files to C:\Users\\AppData\Roaming\odi\oracledi\userlib (don’t forget to restart the ODI client after that). Then you may try to reverse a HFM model using Local (No Agent). If it works, the Jar files are good to go and your problem resides in the ODI agent itself.

HFMException: EPMHFM-65536

This error is happening when people want to reverse the ODI objects using the new ODI RKM, more specifically when the ODI code tries to connect/get the connection token from your HFM application. EPMHFM-65536 is a very generic error message and can be caused by a number of different factors; ranging from an improper install to application processes crashing.

One of the users (thanks Kevin!) solved his issue with the following:

I needed to copy the file “reg.properties” from Oracle\Middleware\user_projects\config\foundation\11.1.2.0 to path Oracle\Middleware\user_projects\epmsystem1\config\foundation\11.1.2.0 and then the KM is running with success.

This blog post gives some other suggestions for the issue:

https://knowepmbi.wordpress.com/2016/11/03/hfm-error-epmhfm-65536-an-unexpected-error-has-occurred/

Since this error is too generic, each HFM application may have its own kind of fix.

IKM Data Load does not load any data (and does not throw any error either)

One user found a bug where the data interface would run without any error but would not load any data. This happened due to a bug in the RKM that may create the datastore with a wrong column order in some cases. As workaround, please change your HFMData datastore to the following order before loading data to HFM:

HFM_Order

We will work to fix the RKM code to avoid this issue and to create the columns in the correct order.

I get a parse error when I have more than one filter in the interface

We noticed that if you add more than one filter in the ODI interface, the IKM throws a parse error. As a workaround, just group all filter criteria in one single filter component. We will fix the IKM code to avoid this issue and we will let you know once it is released.

Slashes vs Backslashes (Token Parsing Error: Lexical error)

Some people stated that they were getting some errors like this” Token Parsing Error: Lexical error at line 34, column 34.  Encountered: “O” (79), after : “\”C:\\”: “. This error is probably due to the backslashes. All the paths that you add in your KM options needs to be using / (slashes). e.g: C:/Temp/<%=snpRef.getTable(“L”,”TARG_NAME”,”A”)%>_Load.log

Isolate the components to see what may be wrong

We are seeing that generally the errors may happen on the ODI agent (that does not load the Jar files correctly or does not have access to the HFM application) or on the HFM installation installation. In order get it easier to identify where the issue may be happening, it is a good advice to install a Java IDE (like Eclipse) in the HFM server and try to create a small code just to connect to your HFM app. If it connects, then the problem is likely to be in the ODI agent. If it does not connect at all, then you have a problem in you HFM application that is not accepting Java API calls.

Here you may find some examples on Java codes that you may copy from and try to create a sample app:

http://hyperionfinn.blogspot.com.br/2016/09/hfm-java-api-part-1-getting-started.html
http://www.accelatis.com/the-accelatis-blog/dissecting-my-first-hfm-sample-program/
http://www.accelatis.com/the-accelatis-blog/coding-against-the-new-hfm-11-1-2-4-java-api/

Running a simple connect Java code first against your HFM application “eliminates” ODI from the possible points of failure. In other words, if you are not able to connect using standard Java code, ODI will not be able to connect as well.

Thanks all!

ODI KMs for HFM 11.1.2.4

Posted in 11.1.1.9.0, ACE, Configuration, DEVEPM, ETL, Hacking, HFM, Knowledge Models, ODI, ODI 11g, ODI Architecture, Uncategorized with tags , , , , , on March 3, 2017 by RZGiampaoli

Hi guys how are you? Today we are proud to announce that we are making available the ODI KMs for HFM 11.1.2.4.

—- EDITED on June/17 —-

We developed these KMs around 6 months ago, but we were waiting to release them together with an article that we wrote for Oracle.

Since OTN had some “Priority changes”, our article was postponed to later this year. As we had some people asking for these KMs we decide to release the KMs now and when the article is published we will let you guys know as well.

The article is live here! And if you guys are having errors with our KMs, please check our troubleshooting post here.

—- EDITED on June/17 —-

Prior to version 11.1.2.4, ODI could be easily used for HFM integration processes. ODI used its KMs with specific HFM drivers (HFMDriver.dll) provided by Oracle that were used to access and manipulate HFM applications. However, on HFM’s latest version, Oracle decided to remove its support for ODI, meaning that all HFM integrations would have to move from ODI to either manual iteration with HFM, usage of another integration tool (Like FDMEE) or create custom code using the new Java HFM API.

Since we didn’t want to re-write all our ODI environment and also none of the above options are robust enough, we decided to recreate the ODI KMs using Java HFM API. For these KMs to work we need to do two things: import them from ODI Java Net and do some setup in the ODI agent.

In the article we explain all options and how do we came up with this solution, but here we will not talk about it since we want you guys to read our article as well and we can’t use the content of the article here since we already signed an exclusivity agreement with Oracle.

The first part is easy and you just need to download the files from the link below

ODI KMS for HFM 11.1.2.4

The second one is more difficult. We need to make the new HFM Jars available to the ODI Agent and in order to do so we have two options:

Install the agent in the HFM machine OR copy the necessary jar files to the agent drivers folder (oracledi\agent\drivers).

If your architecture allows to have both HFM and ODI agent in the same server, then you may use this approach, which is very simple. The only thing to do is to change odiparams file (oracledi\agent\bin\odiparams.bat file in a standalone agent) and add the location of those three HFM jar files. Open odiparams.bat file and search for “ODI_ADDITIONAL_CLASSPATH”. On that setting, just set the location of the HFM jar files, as below (this is just an example. Please adjust the path accordingly to your environment):

set ODI_ADDITIONAL_CLASSPATH=%ODI_ADDITIONAL_CLASSPATH%;

“D:\Oracle\Middleware\EPMSystem11R1\common\jlib\11.1.2.0\epm_j2se.jar”;

“D:\Oracle\Middleware\EPMSystem11R1\common\jlib\11.1.2.0\epm_thrift.jar”;

“D:\Oracle\Middleware\EPMSystem11R1\common\jlib\11.1.2.0\epm_hfm_server.jar”

Save the file, restart the ODI agent and it is done

If you decide to go with the second option, we’ll provide a list of all the necessary jars (be prepared… it’s huge). In the article we explain how to identify all the necessary jar files in a systematic way but here this is not an option as explained before.

Search for all the Jars in the below list and copy all of them under oracledi\agent\drivers folder.

adm.jar
admaps.jar
admodbo.jar
ap.jar
ArtifactListing.jar
audit-client.jar
axiom-api-1.2.10.jar
axiom-impl-1.2.10.jar
axis-ant.jar
axis-jaxrpc-1.2.1.jar
axis.jar
axis2-adb-1.5.4.jar
axis2-kernel-1.5.4.jar
axis2-transport-http-1.5.4.jar
axis2-transport-local-1.5.4.jar
backport-util-concurrent.jar
broker-provider.jar
bsf.jar
castor-1.3.1-core.jar
castor-1.3.1.jar
com.bea.core.apache.commons.collections_3.2.0.jar
com.bea.core.apache.commons.net_1.0.0.0_1-4-1.jar
com.bea.core.apache.commons.pool_1.3.0.jar
com.bea.core.apache.log4j_1.2.13.jar
com.bea.core.apache.regexp_1.0.0.0_1-4.jar
com.bea.core.apache.xalan_2.7.0.jar
com.bea.core.apache.xml.serializer_2.7.0.jar
com.oracle.ws.orawsdl_1.4.0.0.jar
commons-cli-1.1.jar
commons-codec-1.4.jar
commons-compress-1.5.jar
commons-configuration-1.5.jar
commons-dbcp-1.4.0.jar
commons-discovery-0.4.jar
commons-el.jar
commons-fileupload-1.2.jar
commons-httpclient-3.1.jar
commons-io-1.4.jar
commons-lang-2.3.jar
commons-validator-1.3.1.jar
cpld.jar
css.jar
cssimportexport.jar
ctg.jar
ctg_custom.jar
dms.jar
epml.jar
epm_axis.jar
epm_hfm_web.jar
epm_j2se.jar
epm_jrf.jar
epm_lcm.jar
epm_misc.jar
epm_stellant.jar
epm_thrift.jar
essbaseplugin.jar
essbasestudioplugin.jar
ess_es_server.jar
ess_japi.jar
fm-actions.jar
fm-adm-driver.jar
fm-web-objectmodel.jar
fmcommon.jar
fmw_audit.jar
glassfish.jstl_1.2.0.1.jar
hssutil.jar
httpcore-4.0.jar
identitystore.jar
identityutils.jar
interop-sdk.jar
jacc-spi.jar
jakarta-commons.jar
javax.activation_1.1.jar
javax.mail_1.4.jar
javax.security.jacc_1.0.0.0_1-1.jar
jdom.jar
jmxspi.jar
jps-api.jar
jps-common.jar
jps-ee.jar
jps-internal.jar
jps-mbeans.jar
jps-unsupported-api.jar
jps-wls.jar
js.jar
json.jar
jsr173_1.0_api.jar
lcm-clu.jar
lcmclient.jar
LCMXMLBeans.jar
ldapbp.jar
ldapjclnt11.jar
libthrift-0.9.0.jar
log4j-1.2.14.jar
lucene-analyzers-1.9.1.jar
lucene-core-1.9.1.jar
lucene-spellchecker-1.9.1.jar
neethi-2.0.4.jar
ojdbc6dms.jar
ojdl.jar
opencsv-1.8.jar
oraclepki.jar
org.apache.commons.beanutils_1.8.3.jar
org.apache.commons.digester_1.8.jar
org.apache.commons.logging_1.1.1.jar
osdt_cert.jar
osdt_core.jar
osdt_xmlsec.jar
quartz.jar
registration_xmlBeans.jar
registry-api.jar
resolver.jar
saaj.jar
scheduler_ces.jar
servlet-api.jar
slf4j-api-1.5.8.jar
slf4j-log4j12-1.5.8.jar
sourceInfo.jar
stax-api-1.0.1.jar
wf_ces_utils.jar
wf_eng_agent.jar
wf_eng_api.jar
wf_eng_server.jar
wldb2.jar
wlpool.jar
wlsqlserver.jar
wsplugin.jar
xbean.jar
xmlparserv2.jar
xmlpublic.jar
xmlrpc-2.0.1.jar
XmlSchema-1.3.1.jar

Restart the ODI agent and it should be ready to execute any HFM Java code inside of ODI.

I know that this is a lot of jars and will take some time to find all of them but at least you’ll be able to upgrade you HFM and still use the same interfaces you have today in ODI to manage HFM (just remember to use the new data store objects reversed from the new RKM).

The KM usage is very similar to the old ones and we had the instructions in all its options so we’ll not explain then here (just in the article). The only important difference is on how to setup the “Cluster (Data Server)” information on Data Server (Physical Architecture). For the new HFM API, we need to inform two new settings: Oracle Home and Oracle Instance Paths. Those paths are related to the server where your HFM application is installed. These settings will be used internally in HFM API to figure out all HFM information related to that specific HFM instance.

Due to these two new settings and in order to continue to accommodate all connection information within a single place (ODI Topology), “Cluster (Data Server)” was overloaded to receive three settings instead of just one, separating them by colon. So now “Cluster (Data Server)” receives “dataServerName:oracleHomePath:oracleInstancePath” instead of just dataServerName.

data-server

Having those considerations in mind, it is just a matter to create a new Data Server and set the overloaded “Cluster (Data Server)” information and the user/password that ODI will use to access the HFM application. After that, we just need to create a Physical Schema with the name of the HFM application, a new Logical Schema and associate that to a context.

And that is it, you guys are ready to upgrade your HFM environment and still use your old ODI interface to maintain HFM. If you guys have any doubts/suggestions about the KMs please few free to contact us.

If you guys are having errors with our KMs, please check our troubleshooting post here.

I hope you guys enjoy these KMs. See you soon!

ODICS is here!!!

Posted in New Features, ODI, ODI Architecture, ODICS with tags , , on February 13, 2017 by radk00

Hi all, quick but interesting post today! Oracle has just announced its Oracle Data Integrator Cloud Service (ODICS)! You may read about it here and here. We do not have much information about it yet (if it is a complete ODI solution, how it works, if it is similar to what we did in our ODI Cloud article), but we are hoping to get those answers in “Oracle Data Integration PM Webcast – Introducing Oracle Data Integrator Cloud Service (ODICS)” that will happen on Thursday, February 16, 2017 | 11:00 am Eastern Standard Time (GMT-05:00). We encourage all of you to join the webcast and have a first look on what ODICS looks like.

——- EDIT on Feb 23 ——-

Hi all, we’ve watched the ODICS webinar and in the end we were right: ODICS is very similar to what we did on our ODI Cloud article. The only difference is that ODICS is installed directly in JCS instead of a DBCS machine as we did in the article.

In resume, ODICS is nothing more, nothing less than the current ODI 12c installed in a JCS machine that is maintained by Oracle. There is only one restriction (that may not be a big issue for some projects), that the ODI agent needs to be running in the cloud, so you may not deploy it on premise. You may watch Oracle’s ODICS webinar here. You may also know more about ODICS at Christophe blog post.

 

odics

That’s it folks, exciting times are ahead of us!

OTN Article: Building a 100% Cloud Solution with Oracle Data Integrator

Posted in ACE, ArchBeat, BICS, DBCS, DEVEPM, EPM, EPM Automate, InfraStructure, ODI, ODI 11g, ODI Architecture, Oracle, Oracle Database, OS Command, OTN, PBCS, Tips and Tricks with tags , , , , , , , , , , , , on January 23, 2017 by RZGiampaoli

Hi guys how are you? Today I want to share our new OTN article Building a 100% Cloud Solution with Oracle Data Integrator.
The article will cover how to integrate BICS, PBCS, DBCS and ODI and will explain step by step how to create a 100% cloud solution using ODI (everything on the cloud including ODI :)).

This is a perfect article for companies that are thinking to go cloud and have some doubts or even are thinking how you can integrate/use your actual infrastructure with the cloud services.

I hope you guys enjoy and see you soon.

DEVEPM will be at KScope 17!!!

Posted in ACE, EPM, Kscope 17, ODI, ODTUG on January 9, 2017 by radk00

Hi all, how are you doing? With a little delay (sorry, I was on vacation 🙂 ) we are very happy to announce that DEVEPM will be once again at KScope! We are very honored to be selected to present on the best EPM conference in the word! Here is what we are going present at Kscope 17:

Data Warehouse 2.0: Master techniques for EPM guys (powered by ODI)

“EPM environments are generally supported by a Data Warehouse, however, we often see that those DWs are not optimized for the EPM tools. During the years, we have witnessed that modeling a DW thinking about the EPM tools may greatly increase the overall architecture performance.

The most common situation found in several projects is that the people that develops the data warehouse does not have a great knowledge about EPM tools and vice-versa. This may create a big gap between those two concepts which may severally impact performance.

This session will show a lot of techniques to model the right Data Warehouse for EPM tools. We will discuss how to improve performance using partitioned tables, create hierarchical queries with “Connect by Prior”, the correct way to use Multi-Period tables for block data load using Pivot/Unpivot and more. And if you want to go ever further, we will show you how to leverage all those techniques using ODI, which will create the perfect mix to perform any process between your DW and EPM environments.”

Kscope is the largest EPM conference in the world and it will be held on San Antonio, Texas on June 2017. It will feature more than 300 technical sessions, five symposiums, deep dive sessions, and hands on labs over the course of five days.

Got interested? If you register by March 25th you’ll take advantage of the Kscope early bird rates, then don’t waste more time and let’s be part of the greatest EPM event in the world. If you are still unsure about it, read our post about how Kscope/ODTUG changed our lives! Kscope is indeed a life changer event!

kscope17logo-pngmThank you very much everybody and we’ll be waiting for you at Kscope 17!

DEVEPM 2016 in review

Posted in 2016, ACE, DEVEPM with tags , , on January 5, 2017 by RZGiampaoli

Hi guys how are you?

Another year has gone and it was a great (if not the greatest) year for DEVEPM! We have done a lot of cool stuff this year like being upgraded to ACE status, presented 2 sessions at Kscope16, 2MTT for Oracle OTN, article for Oracle OTN, got selected for Kscope 17, Ricardo got select to be part of the ODTUG leadership program and even moved to Ireland this year! An of course a lot of other EPM related topics 🙂

We would like to thank each one of you for accessing/reading/sharing our blog posts! I hope that we could positively impact your lives somehow with any of our post. That’s the reason why we blog: we want to somehow share our knowledge back to the community that always helped us in difficult times!

And 2017 will be no different! We will work even harder to bring new content about EPM world for you! Thanks again and see you soon!!!!

Follow us on Twitter: @RodrigoRadtke @RZGiampaoli @DEVEPM

Here’s an excerpt:

The concert hall at the Sydney Opera House holds 2,700 people. This blog was viewed about 25,700 times in 2016. If it were a concert at Sydney Opera House, it would take about 9 sold-out performances for that many people to see it.