that is pretty easy. You could find plenty of articles on how to "create missing data". However, I have done the same with personell data - from a start_date and an end_date, I created a table with one record per day.
Using this code (approx.), it should work:
IF(LeaveDate < TODAY(), LeaveDate, TODAY()) as EndDate,
DATE(Eintritt + IterNo()-1) as Datum_MA,
DATE(Eintritt + IterNo()-1) as %Datum,
While IterNO() <= (EndDate - StartDate +1)
Well, using this code you will get a lot of data, but then you'll have every possibility of displaying your data as you see fit.
are you serious in saying that the currently active customers have a leaveDate in the far past?
Well, I guess you are since you have said it twice now.
No, of course not - if this is a standard date for all customers who are still active, you can just edit that IF-clause in the LOAD statement like
>>> IF(LeaveDate = '30/12/1899', TODAY(), LeaveDate) as EndDate <<<
That way, the table will be populated up to the present day for all customers who have this standardized LeaveDate (and are thus still active) and up to the LeaveDate for all others (who have already left).