Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Qlik Open Lakehouse is Now Generally Available! Discover the key highlights and partner resources here.
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Datatype mismatch AS400

Hi
I have created a AS400 input component.
Among the fields I want there is one that is called invoice description. In our AS400 this is set to type NCHAR(24)
When I look at the schema design I see that it is set with type String and DB Type to varchar.
It failes at the very first line. The text it finds is "2412 FEILBET."
My error code:
connecting to socket on port 3671
connected
Exception in component tAS400Input_1
java.sql.SQLException: Data type mismatch. (For input string: "2412 FEILBET.")
at com.ibm.as400.access.JDError.throwSQLException(JDError.java:528)
at com.ibm.as400.access.SQLChar.getFloat(SQLChar.java:464)
at com.ibm.as400.access.AS400JDBCResultSet.getFloat(AS400JDBCResultSet.java:2869)
at as400_mitmas.fapred_0_1.FAPRED.tAS400Input_1Process(FAPRED.java:700)
at as400_mitmas.fapred_0_1.FAPRED.runJobInTOS(FAPRED.java:1065)
at as400_mitmas.fapred_0_1.FAPRED.main(FAPRED.java:936)
I have tried to alter the line so it has "FEILBET". Still the same error.
Anyone got ideas on why this happends?
Dan
Labels (4)
4 Replies
Anonymous
Not applicable
Author

Hi Dan
Can you please upload a screenshot of schema?
Best regards
Shong
Anonymous
Not applicable
Author

Are you sure that the problem is related to that field? in the stack trace I see something related to float / numeric fields columns....
show your data if you want help...
Anonymous
Not applicable
Author

Hi
Sorry for late reply. I have been on a short holiday. 0683p000009MACn.png
Please find below my attached printscreen of my model.
Is tis what you wanted?
I also tested to remove the field I thought was worng. Imported just fine without that one.
Sp at least I know what field it is. 0683p000009MACn.png
Dan
Anonymous
Not applicable
Author

The code is issuing a getFloat (...at com.ibm.as400.access.AS400JDBCResultSet.getFloat...).
Maybe somewhere you have on as400 character data mapped as float ( maybe automatically wrongly by Talend ).
Have you checked that.
Also you should compare the "dds" command on as400 to the schema you are fetching.
bye