While investigating a recent Infosphere Information Server (IIS), Datastage, Essbase Connect error I found the explanations of the probable causes of the error not to be terribly meaningful. So, now that I have run our error to ground, I thought it might be nice to jot down a quick note of the potential cause of the ‘Client Commands are Currently Not Being Accepted’ error, which I gleaned from the process.
Error Message Id
An error occurred while processing the request on the server. The error information is 1051544 (message on contacting or from application:[<<DateTimeStamp>>]Local////3544/Error(1013204) Client Commands are Currently Not Being Accepted.
Possible Causes of The Error
This Error is a problem with access to the Essbase object or accessing the security within the Essbase Object. This can be a result of multiple issues, such as:
Object doesn’t exist – The Essbase object didn’t exist in the location specified,
Communications – the location is unavailable or cannot be reached,
Path Security – Security gets in the way to access the Essbase object location
Essbase Security – Security within the Essbase object does not support the user or filter being submitted. Also, the Essbase object security may be corrupted or incomplete.
Essbase Object Structure – the Essbase object was not properly structured to support the filter or the Essbase filter is malformed for the current structure.
IBM Knowledge Center, InfoSphere Information Server 11.7.0, Connecting to data sources, Enterprise applications, IBM InfoSphere Information Server Pack for Hyperion Essbase
While working with a client’s 9.1 DataStage version, I ran into a situation where they wanted to parameterize SQL where clause lists in an Oracle Connector stage, which honestly was not very straight forward to figure out. First, if the APT_OSL_PARAM_ESC_SQUOTE is not set and single quotes are used in the parameter, the job creates unquoted invalid SQL when the parameter is populated. Second, I found much of the information confusing and/or incomplete in its explanation. After some research and some trial and error, here is how I resolved the issue. I’ll endeavor to be concise, but holistic in my explanation.
When this Variable applies
This where I know this process applies, there may be other circumstances to which is this applicable, but I’m listing the ones here with which I have recent experience.
Infosphere Information Server Datastage
Versions 91, 11.3, and 11.5
Versions 11g and 12c
Here is a brief explanation of the steps I used to implement the where clause as a parameter. Please note that in this example, I am using a job parameter to populate on a portion of the where clause, you can certainly pass the entire where clause as a parameter, if it is not too long.
Configure Project Variable in Administrator
Add APT_OSL_PARAM_ESC_SQUOTE to project in Administrator
Populate the APT_OSL_PARAM_ESC_SQUOTE Variable \
Create job parameter
Following your project name convention or standard practice, if you customer and/or project do not have established naming conventions, create the job parameter in the job. See jp_ItemSource parameter in the image below.
Add job parameter to Custom SQL in Select Oracle Connector Stage
On the Job parameter has been created, add the job parameter to the SQL statement of the job.
IBM Knowledge Center > InfoSphere Information Server 11.5.0
Connecting to data sources > Databases > Oracle databases > Oracle connector
How to know if your Oracle Client install is 32 Bit or 64 Bit
Sometimes you just need to know if your Oracle Client install is 32 bit or 64 bit. But how do you figure that out? Here are two methods you can try.
The first method
Go to the %ORACLE_HOME%\inventory\ContentsXML folder and open the comps.xml file.
Look for <DEP_LIST> on the ~second screen.
If you see this: PLAT=”NT_AMD64” then your Oracle Home is 64 bit
If you see this: PLAT=”NT_X86” then your Oracle Home is 32 bit.
It is possible to have both the 32-bit and the 64-bit Oracle Homes installed.
The second method
This method is a bit faster. Windows has a different lib directory for 32-bit and 64-bit software. If you look under the ORACLE_HOME folder if you see a “lib” AND a “lib32” folder you have a 64 bit Oracle Client. If you see just the “lib” folder you’ve got a 32 bit Oracle Client.
Since the Infosphere, information server, repository, has to be installed manually with the scripts provided in the IBM software, sometimes you run into difficulties. So, here’s a quick script, which I have found useful in the past to identify user permissions for the IAUSER on Oracle database’s to help rundown discrepancies in user permissions.
WHERE GRANTEE = ‘iauser’
If we cannot run against the ALL_TAB_PRIVS view, then we can try the ALL_TAB_PRIVS view:
I found working with date literal, when working with the Infosphere SFDC Connector soql, to be counterintuitive for me. At least as I, normally, as I use SQL. I spent a little time running trials in Workbench, before I finally locked on to the ‘where clause’ criteria data pattern. So, here a quick example.
SOQL DATE String Literals Where Clause Rules
Basically, the date pattern is straight forward. The basic rules are for a soql where clause:
No Casting function, or casting for the where soql where clause to read.
Example SOQL DATE String Literals
So, here are a couple of date string literal examples in SQL:
Example SQL with Date String Literal Where Clause
From Target_and_Segmentation__c t
where t.Target_Date__c > 2014-10-31
Salesforce Developer Documentation
Home, Developer Documentation, Force.com SOQL and SOSL Reference