Attached is a very basic example of how to set it up. If your report has no parameters or you don't want to pass anything to them, then ignore/delete the section with them
For a lot of steps, they have to be initialised by feeding them a stream of data so in this example I am feeding the report output step with some text I generated using the Data Grid step
Transformations and jobs work differently. Transformations are where the majority of work can be done, depending on use case. You can then use a job to connect several transformations and even other jobs together. Jobs have a defined start and end point and steps in the job are executed sequentially. Transformations on the other hand are executed in parallel. As such, if you have a transformation and part of it relies on the completion of another part in the transformation, it will not work. You would need to separate the two parts and use a job to run them sequentially
Jobs also allow you to pass results and variables between transformations/jobs. So in this PRD output example you could set the location of the output as a variable and pass it to the mail step in a job for attaching it