>Agencydefs.Code is an integer field
>
>With these settings, AgencyChoice.Value is an integer.
>
>If I change ControlSource to IncomingCases.AgencyCode (AN INTEGER FIELD), AgencyChoice.Value becomes a numeric value with 2 decimal places.
>
he problem is that a property takes on the data type of a memvar, not of a field; while there is a field Integer datatype, there is no memvar datatype; the net result is that the value will be type N.
From a practical perspective, memvars acquire one of two numeric datatypes; an N, B, I or F field will be stored to a memvar of type N; the only numeric type that isn't stored to an N is currency (Y) data, which is always expressed as a currency memvar. Use of the currency type has side-effects that may not be what you expect regarding precision and rounding; any currency value in an expression will force the entire result of the calculation to take on the currency data type, with the rounding and precision behavior of a currency datatype, unless all currency expressions are explicitly converted to a numeric type use MTON().