A ver prueba con esto:
Código SQL:
Ver originalINSERT INTO materiales(ID,ID_ACTIVIDAD,NUM_MATERIAL,CANTIDAD_MATERIAL)
SELECT ROW_NUMBER() OVER(ORDER BY ID_ACTIV DESC), *
FROM (
SELECT ID_ACTIV, NUM_PERNO, CANTIDAD_PERNO
FROM tabla1
UNION ALL
SELECT ID_ACTIV, NUM_SELLO, CANTIDAD_SELLO
FROM tabla1
) T
Para la otra tabla, de donde salio 1564?