0001 isn't a number, so it can't be stored into a number field, but into a text field.
To do what you want is really simple...
In the option of auto-enter ( evaluate always ) a calculation of that TEXT field, put this calc:
Right ( "0000" & YourTextFieldName ; 4 )
I see. That explains a lot. Thanks for the Right() function example. That's very helpful.