siunitx and missing decimal point
The command \si{units}
is for units only. You have to use the \SI{number}{units}
for what you want to do.
I guess i am replying really late for your query, but you should use \num
directly and not nest it in \si
.
For a number
\num{12.5}
and \SI
(in upper case) for a number with a unit
\SI{12.5}{\milli\gram}