You can download this workflow hereÂ
In the image below I just added a few annotations to the workflow. Notice that, for each Dimension we are adding, a similar block of nodes is added to the loading of our Facts table : select Dimension table, join on the Natural key, filter to keep only the Dimension row with Valid = Y and drop the Valid column. In the next image, you see how we can tidy things up further by creating a Metanode fore each such block.
Below you can see a screenshot of our modified Facts table. Note that the Origin column is now no longer necessary, as we now have the ORIGIN_AIRPORT_SKEY column. However, for the moment I left it in there, because it could be useful to debug my workflow.
I suggest that, as an exercise, you add a DEST_AIRPORT_SKEY column to our Facts table in a similar way, using the same Dimension SCD_airports to get the Surrogate Key. Anyway, you can see the solution on the next page.