I suspect that is a problem of "the time label that you see is not the time value that you think".
The software could have some improvement here to recognize the situation. But for now, let me explain what is going on, and how to handle it.
Look at the failure data, April:
There are two distinct values of that month. The software thinks there two production batches. And neither the numbers equal the time value of April in the production data table. So, the software is not able to pair time stamp in failure data with time stamp in production data.
To solve it, you need to make sure the values are same under the same label you see, e.g. "04/2017". To make that happen, you need one of the truncation operations on time. Here is an example
Parse Date( Char( Format( :Sold Month Fail, "m/y" ) ), "m/y" )
What it does is:
Take the value of the date, and produce a string, which is what you see.
Parse the string and convert it to a date value. There is only one way to convert it, if the string is the same. So it guarantees to produce the same value if labels are same.
Please let me know whether that solves the problem. Thanks for bringing up the issue!