It's very likely that your Marketing Channel and Tracking Code are on different attribution models, so mixing them generally doesn't work well.
Marketing Channels by default have a 30 Day attribution.
Tracking Code by default has a 7 Day attribution.
Really, you should probably be capturing your Tracking Code values in your Marketing Channel Detail dimension, as that is explicitly joined to Marketing Channel (same attribution, and set in the same processing rules).
At least, for your rules that are using "Tracking Code"... for other things, like Organic Search, you can change the Detail to be something more relevant.
For more details on what I mean by the attribution mismatch:
Visit 1 - campaign X (i.e. not covered by your other specific Marketing Channel Rules - Affiliate catches all the remaining campaign codes not caught by specific rules)
- Page A - Campaign X
- Tracking Code set to "X"
- Marketing Channel set to "Affiliate"
- Marketing Channel Detail set to Tracking Code (i.e. "X")
- Instance of Marketing Channel, Marketing Channel Detail and Tracking Code all triggered
- Page B
- Tracking Code maintained as "X" due to 1 week attribution
- Marketing Channel maintained as "Affiliate" due to 30 day attribution
- Marketing Channel Detail maintained as "X" due to 30 day attribution
- No instance metrics triggered (nothing is explicitly set)
Visit 2 - direct, less than a week later
- Page C
- Tracking Code maintained as "X" due to 1 week attribution
- Marketing Channel maintained as "Affiliate" due to 30 day attribution
- Marketing Channel Detail maintained as "X" due to 30 day attribution
- No instance metrics triggered (nothing is explicitly set)
Visit 3 - direct, 2 weeks later
- Page D
- Tracking Code set to "" (unspecified), past the 1 week attribution model
- Marketing Channel maintained as "Affiliate" due to 30 day attribution
- Marketing Channel Detail maintained as "X" due to 30 day attribution
- No instance metrics triggered (nothing is explicitly set)
Now let's say you pull this week's data.. you will still have Marketing Channel and Marketing Channel Detail info, since they were set less than a month ago; but you will not see Tracking Code since that was set almost 3 weeks ago, and it only maintains the value for 1 week.