what you want is normally achieved by using temporary tables of type "view" rather than "data". How much pipelining can be achieved depends on the complexity of the transformation steps. For example, if one transformation is a transpose, the step will probably have to read the whole table before it starts writing out data. Similarly, a PROC SORT won't write its out= data until it has read all the data. Sometimes what seem like really complex steps, like joining two or more tables, will "pipeline" really well.
good luck
PeterC