Friday, July 5, 2019

Tips on troubleshooting UD Connect type based source systems connection to SAP BW

There can be multiple issues popping up while connecting SAP BW to UD Connect based source systems like MSSQL. Within this blog post, I list few of them I recently faced.

1. Message No. RSSDK300:
S:RSSDK:300 Cannot convert a value of 'Local' from type java.l ang.String to INT at field CURRENCYTYPE
or
S:RSSDK:300 Cannot convert a value of 'LOCAL' from type java.lang.String to FLOAT at field CURRENCY
Normally error no RSSDK300 can be solved by reactivating corresponding DataSource, then following errors may pop up:
S:RSSDK:300 Field ENTITY is not a member of /BIC/CAZRXD_V_0001 70000001
Message No. RSSDK300
or
S:RSSDK:300 Column: Entity not found    Message No. RSSDK300
To solve this look for SAP Note: 1009063 - UDConnect displays erratic behaviour in loading data and blog. Or as per Note 1040572 – “UDC: Error "Column XXX not found" happens randomly”, use use parameters "fixedSchema" and "fixedCatalog" because the MSSQL system may be using different DB schemas and you may use the table/view that has same name in different schemas.

2 Message No. RSM340
Errors in source system       Message No. RSM340

3 Message No. RSDS_ACCESS036
Error while extracting field list of UD Connect object: UDC ADAPT ERROR::RSSDK|100|while trying to invoke th

4 Message No. RSSDK100
UDC adapter problem: connection area     Message No. RSSDK100

Things that may help to solve above mentioned errors:

JDBC test page
There is JDBC test page available on NetWeaver JAVA stack with following URL:
http://server:port/TestJDBC_Web/TestJDBCPage.jsp
Here one can test connection to particular UD Connect based system. Moreover you can even extract the columns of table or view extraction is retrieving data from. This extremely needed check. It can reveal many issues. For example, in case BW’s datasource is expecting column called ABC but in source system there is completely different column name available like XYZ.

Meta data cache
As UD Connect, based systems are using JAVA NetWeaver server in middle there can be an issues at JAVA server. Mostly these are related to meta data cache. Because metadata description may already be present metadata cache of JAVA server. After the changes done insource system (column name change, column data type/length change, etc.) these changes must be replicated to the JAVA server. As those changes will not automatically be removed from the metadata cache on the JAVA. Normally these can be easily solved by restarting JAVA server when the cache is cleared. However, in production environments it may not be easy to get a time slot to perform the restart. Luckily as of NW version 7.2 the clear cache can be done w/o restart. Procedure is described in SAP Note 1479970 - Changes in RFC modules are not reflected in Java Server. In NetWeaver Admin tool choose tab "Availability and Performance" then select "Resource Monitoring" then "JCo Monitoring", there choose tab "Meta Data Cache". It is also possible to made the cache clear programmatically.

Investigate JAVA logs
Look for following logs to dig out more details about the error:
·        \usr\sap\\\j2ee\cluster\server?\BI_SDK_Trace.log. (there's one log per server node)
·        \usr\sap\\\j2ee\cluster\server?\log\defaultTrace.?.trc (send us the latest default?.trc file from all the server nodes)
·        \usr\sap\\\j2ee\cluster\server0\log\applications\BI\UDI.?.log

Debug on ABAP Stack
Set a breakpoint in FM RSSDK_DATA_UPLOAD_ALL on the line where function RSSDK_DATA_UPLOAD_ALL is called. Also see t-code RSSDK - DB Connect and ABAP program RSSDK_START.

More information:
1722695 - JRA: Object not found in lookup of CallbackConnectionFactory
2000681 - JRA: NullPointerException in CallbackConnectionFactory
1004194 - UDC: How to create log files for problem analysis
512739 - BW external DB Connect for MS SQLServer
1396552 - Remote connection delivers wrong character data

No comments: