I don't know OPL but being curious I looked at an online language reference and found the function FIX$, which converts a float to a string with a specified number of decimals. If for example x is a ten digit float then (I think) FIX$(x,3,10) rounds it to three decimal places and stores it as a string. The result should be printable as a string.