>>I would use an intermediate .controlSource such as a Form.Property, or manage .value myself without .controlSource
>>
>>controlSource = 'thisForm.property'
>>procedure refresh
>>store table.field to (this.controlSource)
>>
>>procedure thisForm.property_assign
>>lparameters propertyValue
>>replace in table field with padl(ltrim(m.propertyValue, '0'), 9)
>>this.property = padl(propertyValue, 9, '0')
>>
>
>And when populating that value from the field, strip the leading zeros
>
>store ltrim(table.field, 1, "0") to (this.controlSource)
We might also want to guard against possible problem of turning an entry of "0" into a blank string.