Gayatri,
No, the pivot cannot be dynamic. If the list of products is finite then you will have to have a column for each product.
Regarding data type validation. The question is too general, you'd have to give a specific example. Please could you offer that example elsewhere (like the SSIS forum on MSDN) as your questions don't really relate to the subject of the blog entry to which you are replying.
Sorry i can't be of more help.
Thanks
Jamie