In A1 your "integer of up to ten digits (no digit can be a zero)", in
any other cell that "single formula in a cell (albeit a very long
one)" array-entered:
=SUM(SMALL(VALUE(MID($A$1,ROW(INDIRECT("A1:A" &
LEN(A1))),1)),ROW(INDIRECT("A1:A" &
LEN(A1))))*10^(LEN(A1)-ROW(INDIRECT("A1:A" & LEN(A1)))))
making sure the cell is wide enough to show all the digits. Will work
up to 15 digits but for more than 11 digits it requires the cells to
be formatted as Number with no decimal places.
There will be a shorter one I'm sure!