invalid data is pushed on event map

i am trying to push data on an event map using WebService Data Collector using WSDimensionalDataCollector.wsdl…but when i push value 0004 it is pushed as 4 in event map table. but if i push 0004A if is pushed correctly. i thing it is converting to integer (if possible) before pushing data. i want to push same value as 0004 not 4.can any one tell me is it possible or not and if yes then how?