I tried to do this, but I had bad results with numeric columns. If you apply an 'AXX' format on a numeric column, you obtain something like ####### in the data...
So one should refine your query with a DECODE like
DECODE(DATA_TYPE, 'NUMBER', '999', 'VARCHAR', 'A')...
Too much work for my...