A good question like this one is worth a thousand answers Thanks Chris I get the same result when using the same input. Computers are not decimal machines. Decimal to Binary to Decimal is not reversible. /* version 1 */ %Let date1= 41DACF8418749BA6; %let date2=%sysfunc(sum(%sysfunc(inputn(41DACF8418749BA6,hex16.)),-10),datetime26.3); %put &=date1; %put Loosing precision: &=date2; /* version 2 */ %Let date1= 41DACF8418749BA6; %let date2=%sysfunc(sum(%sysfunc(inputn(41DACF8418749BA6,hex16.)),-10),datetime26.3); %put &=date1; %put Full precision: &=date2; LOG 108 /* version 1 */ 109 %Let date1= 41DACF8418749BA6; 110 %let date2=%sysfunc(sum(%sysfunc(inputn(41DACF8418749BA6,hex16.)),-10),datetime26.3); 111 %put &=date1; DATE1=41DACF8418749BA6 112 %put Loosing precision: &=date2; Loosing precision: DATE2=05JAN2017:09:58:47.822 113 /* version 2 */ 114 %Let date1= 41DACF8418749BA6; 115 %let date2=%sysfunc(sum(%sysfunc(inputn(41DACF8418749BA6,hex16.)),-10),datetime26.3); 116 %put &=date1; DATE1=41DACF8418749BA6 117 %put Full precision: &=date2; Full precision: DATE2=05JAN2017:09:58:47.822
... View more