I would do the V&V on import of the data. It is, for me at least, a standard practice anyway. I 'always' import to a temp something, run the V&V, then move the data which passes the tests to a more permanant structure. Data which 'fails' is returned to sender with annotation to indicate which records/fields failed. I get a bit of flack over this from individuals the first time or two, but they soon get the message and many start some type of V&V before sending me data ... presumably just to avoid receiveing the returs as I continue to use the same approach, I just notice fewer returns.
From your discription, it hardly seems necessary to actually visit each field of each record. as a couple of simple aggregate (Min/Max of each field) queries can readily identify which fields have invalid data. Then, of course, the recordsets which pass need no further investigation. Those which fail would be processsed according to the bussiness rule (reject/return entire recordset to supplier, discard failed records, ...
MichaelRed