-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Packed/zoned decimals not working correctly #24
Comments
Original comment by Tony Cairns (Bitbucket: rangercairns, GitHub: rangercairns). Ok, I have a fix seems to work for packed and zoned. Thanks.
|
Original comment by Teemu Halmela (Bitbucket: teemu_, GitHub: Unknown). Thanks, almost there. When giving too many decimals it still breaks. $ ./test1000_sql400json64 ../json/j0033_decimal_numbers4
input(5000000):
{"pgm":[{"name":"DECIMALS", "lib":"DB2JSON"},
{"s":[
{"name":"afloat", "type":"4f2", "value":1000.000},
{"name":"adouble", "type":"8f3", "value":1000.0000},
{"name":"apacked", "type":"12p2", "value":1000.000},
{"name":"azoned", "type":"12s2", "value":1000.000}
]}
]}
output(124):
{"script":[{"pgm":["DECIMALS","DB2JSON",{"afloat":1000.00},{"adouble":1000.000},{"apacked":10000.00},{"azoned":10000.00}]}]}
result:
fail missing ("apacked":1000.00)
fail (-1) |
Original comment by Tony Cairns (Bitbucket: rangercairns, GitHub: rangercairns). Ok, try again. Thanks.
I could not decide extra digits past max scale should round up. Anyway, I just truncated anything past field scale size.
Opinion? |
Original comment by Teemu Halmela (Bitbucket: teemu_, GitHub: Unknown). This looks good. I'm fine with truncation. Maybe a note should be added to the readme about this behavior. |
Original comment by Tony Cairns (Bitbucket: rangercairns, GitHub: rangercairns).
Mm ... add round to avoid note about truncation behaviour (coin flip). Only one place in source (PaseToIle.c), can be easily removed, should rounding prove unpopular or defective.
|
Original comment by Tony Cairns (Bitbucket: rangercairns, GitHub: rangercairns). Are we done with this issue? We still pondering more fate of packed and zoned decimal round vs. truncation? |
Original comment by Teemu Halmela (Bitbucket: teemu_, GitHub: Unknown). This is done. |
Original report by Teemu Halmela (Bitbucket: teemu_, GitHub: Unknown).
Decimal aren't working as expected with packed and zoned numbers. If I give number 100 to 5p2 it becomes 1.00 when parsed.
I made some tests for this problem.
The text was updated successfully, but these errors were encountered: