Did you add your sr-sql.xml configuration to the datasources.xml file?
Not sure if this works the same on 7.1.22 as it does on 7.1.01, but I know I had to do that when creating a new external data source type and query...
Make sure you reset the Perceive service as well after any XML changes.
This approach should help you to diagnose the problem.
Edit file $CWA_HOME/jakarta-tomcat-4.0.3/webapps/qtv/WEB-INF/classes/log4j.properties to include the line:
Then cycle Perceive and retry your query. You'll get entries in $CWA_HOME/jakarta-tomcat-4.0.3/logs/perceive.log showing either the SQL which Perceive is running, or a hint showing why it can't run the SQL.
If you can't figure it from that, post the most promising entries from the log file and I'll see if I can work it out. In my experience, it can be a frustrating business.
Attached is a .zip with how I ended up integrating Perceive to Service Reporting. This built on the original that Perry submitted some time ago:
(Note: the changes I made to the NodeDiscovery and SystemInfo queries rely on some stored procedures that distinguish between Windows and Unix systems.)