You need to be clearer about what your input field looks like and what you want your output field to look like.
Is the 109.86 value a character value '109.86' - if so, what is the position and length of the field? Note that you can't use ZD for a value with an actual decimal point, but you can use DFSORT's UFF format, e.g. if the "ZD" values are 'ddd.dd' values starting in position 21, you could use these DFSORT control statements to convert them to 6-byte PD values.
Or is the 109.86 some other type of value, e.g. an internal value without the decimal point - if so, what is the position and length of the field and what does it look like in hex?
PD values do NOT have decimal points although the decimal point can be implied, e.g., '109.86' can be stored as a PD value of X'10986C' but any application that uses the PD value has to know about the implied decimal point.