Where can I find all Sinnoh Pokemon?

Every single Sinnoh Pokemon can be obtained in either Diamond or Pearl version by a number of ways: 1) Use a cheat code to obtain all Pokemon

2) Catch every Pokemon in the game and trade from another

3) Recieve events for event Pokemon

The Pokemon needed to fill the Sinnoh Pokedex can be caught in the game and its respective other. Note that in order to get the National Pokedex, you just have to see every Sinnoh Pokemon.