Page 2 of 2

Posted: Mon Aug 12, 2013 4:40 pm
by ray.wurlod
Looks like you have have left 'Apple' unquoted, or quoted it with double quotes rather than single quotes, so that DB2 believes it to be a column name.

Posted: Mon Aug 12, 2013 4:51 pm
by rjdickson
MJ,

Start simple, add one thing at a time in, and you will know what caused the issue and can work from there.

This does work. I've done it as recently as 10 minutes ago.

Good luck!

Posted: Mon Aug 12, 2013 5:10 pm
by Maximus_Jack
yes, did that robert and ray, adding one by one, all these logs where found in iaserver.log

COL1 = 'APPLE' ---> No problem when put in single quotes

when validated only with this condition
END_DATE > DATE()


error received:
Error [IBM-IA-SERVER] [] Something went wrong. More details follow... ODBC function "SQLNumResultCols" reported: SQLSTATE = HY000: Native Error Code = -170: Msg = [IBM(DataDirect OEM)][ODBC DB2 Wire Protocol driver][UDB DB2 for OS/390 and z/OS]NUMBER OF ARGUMENTS SPECIFIED FOR DATE INVALID.

com.ascential.asb.cas.shared.ConnectorServiceException: ODBC function "SQLNumResultCols" reported: SQLSTATE = HY000: Native Error Code = -170: Msg = [IBM(DataDirect OEM)][ODBC DB2 Wire Protocol driver][UDB DB2 for OS/390 and z/OS]NUMBER OF ARGUMENTS SPECIFIED FOR DATE INVALID.
at com.ascential.asb.cas.handler.ConnectorAccessHandler$Worker.processCreateDataProducerRequest(ConnectorAccessHandler.java:840)
at com.ascential.asb.cas.handler.ConnectorAccessHandler$Worker.run(ConnectorAccessHandler.java:518)

when validated only for
BEGINDATE <= DATE()

received error as:
Error [IBM-IA-SERVER] [] Something went wrong. More details follow... ODBC function "SQLNumResultCols" reported: SQLSTATE = HY000: Native Error Code = -170: Msg = [IBM(DataDirect OEM)][ODBC DB2 Wire Protocol driver][UDB DB2 for OS/390 and z/OS]NUMBER OF ARGUMENTS SPECIFIED FOR DATE INVALID.

com.ascential.asb.cas.shared.ConnectorServiceException: ODBC function "SQLNumResultCols" reported: SQLSTATE = HY000: Native Error Code = -170: Msg = [IBM(DataDirect OEM)][ODBC DB2 Wire Protocol driver][UDB DB2 for OS/390 and z/OS]NUMBER OF ARGUMENTS SPECIFIED FOR DATE INVALID.
at com.ascential.asb.cas.handler.ConnectorAccessHandler$Worker.processCreateDataProducerRequest(ConnectorAccessHandler.java:840)
at com.ascential.asb.cas.handler.ConnectorAccessHandler$Worker.run(ConnectorAccessHandler.java:518)

when validated only for
DATEVAL(EFDATE)

received error as:
Error [IBM-IA-SERVER] [] Something went wrong. More details follow... ODBC function "SQLNumResultCols" reported: SQLSTATE = HY000: Native Error Code = -440: Msg = [IBM(DataDirect OEM)][ODBC DB2 Wire Protocol driver][UDB DB2 for OS/390 and z/OS]No function or procedure was found with the specified name (FUNCTION) and compatible arguments. DATEVAL

com.ascential.asb.cas.shared.ConnectorServiceException: ODBC function "SQLNumResultCols" reported: SQLSTATE = HY000: Native Error Code = -440: Msg = [IBM(DataDirect OEM)][ODBC DB2 Wire Protocol driver][UDB DB2 for OS/390 and z/OS]No function or procedure was found with the specified name (FUNCTION) and compatible arguments. DATEVAL
at com.ascential.asb.cas.handler.ConnectorAccessHandler$Worker.processCreateDataProducerRequest(ConnectorAccessHandler.java:840)
at com.ascential.asb.cas.handler.ConnectorAccessHandler$Worker.run(ConnectorAccessHandler.java:518)

Posted: Mon Aug 12, 2013 5:58 pm
by rjdickson
ok - good. We are making some progress.

I see that you are using DB2/Z. DATE() apparently does not work for you. It works for me because I am using an ODBC source.

Maybe CURRENT_DATE() instead?

Posted: Mon Aug 12, 2013 6:15 pm
by Maximus_Jack
tried both robert

END_DATE > CURDATE()

CURDATE

Error [IBM-IA-SERVER] [] Something went wrong. More details follow... ODBC function "SQLNumResultCols" reported: SQLSTATE = HY000: Native Error Code = -440: Msg = [IBM(DataDirect OEM)][ODBC DB2 Wire Protocol driver][UDB DB2 for OS/390 and z/OS]No function or procedure was found with the specified name (FUNCTION) and compatible arguments. CURDATE

com.ascential.asb.cas.shared.ConnectorServiceException: ODBC function "SQLNumResultCols" reported: SQLSTATE = HY000: Native Error Code = -440: Msg = [IBM(DataDirect OEM)][ODBC DB2 Wire Protocol driver][UDB DB2 for OS/390 and z/OS]No function or procedure was found with the specified name (FUNCTION) and compatible arguments. CURDATE
at com.ascential.asb.cas.handler.ConnectorAccessHandler$Worker.processCreateDataProducerRequest(ConnectorAccessHandler.java:840)
at com.ascential.asb.cas.handler.ConnectorAccessHandler$Worker.run(ConnectorAccessHandler.java:518)


BEGINDATE <= CURRENT_DATE()

CURRENT_DATE

Error [IBM-IA-SERVER] [] Something went wrong. More details follow... ODBC function "SQLNumResultCols" reported: SQLSTATE = HY000: Native Error Code = -440: Msg = [IBM(DataDirect OEM)][ODBC DB2 Wire Protocol driver][UDB DB2 for OS/390 and z/OS]No function or procedure was found with the specified name (FUNCTION) and compatible arguments. CURRENT_DATE

com.ascential.asb.cas.shared.ConnectorServiceException: ODBC function "SQLNumResultCols" reported: SQLSTATE = HY000: Native Error Code = -440: Msg = [IBM(DataDirect OEM)][ODBC DB2 Wire Protocol driver][UDB DB2 for OS/390 and z/OS]No function or procedure was found with the specified name (FUNCTION) and compatible arguments. CURRENT_DATE
at com.ascential.asb.cas.handler.ConnectorAccessHandler$Worker.processCreateDataProducerRequest(ConnectorAccessHandler.java:840)
at com.ascential.asb.cas.handler.ConnectorAccessHandler$Worker.run(ConnectorAccessHandler.java:518)

according to this doc, curdate() should have worked, but not working.. know why???

http://pic.dhe.ibm.com/infocenter/dzich ... clidat.htm

Posted: Tue Aug 13, 2013 7:45 am
by rjdickson
Two more thoughts:

Code: Select all

Try END_DATE > CURDATE() AND COL1 = 'APPLE'
() is not the last thing one the line. Just a silly guess as I don't have a DB2 Z system to test with...

If that does not work, then open a PMR with JUST 'END_DATE > CURDATE() not working.'

Good luck!

Posted: Tue Aug 13, 2013 7:46 am
by Maximus_Jack
any insights on this please? thanks