Closed bbarry closed 4 years ago
I had a similar issue with an output parameter. I got it working using DbType = DbType.Int64
example new AseParameter("@batch_posfix", AseDbType.Numeric, 10) { Direction = ParameterDirection.Output, Scale = 10, Precision = 0, DbType = DbType.Int64 }
In our case we have this working with the currency type but it seems like there is a problem with output parameters that have variable sizes?
When using decimal output parameters and calling a stored procedure, we are getting various scale and precision errors depending on the value of the stored procedure.
Example procedure:
C# to reproduce issue:
Expected: no errors
Actual:
AdoNetCore.AseClient.AseException : Arithmetic overflow during implicit conversion of NUMERIC value '2819.0444' to a NUMERIC field .
.Net Core 3.1 or .Net Framework 4.8
AdoNetCore.AseClient 0.16.0
SAP ASE 16 PL07, also happens against PL03 (these are the versions of ASE I have connections to); similar code on .net framework works with Sybase.AdoNet4.AseClient.dll (testing with 16.0.3.0)