So to start two summarize tools were used. One to calculate the start date for each client and another to calculate the last date for the data set. Append fields was just used to join the two together so each client number had the date it first appeared and the last date.
Generate rows was just used to create the intermediate dates between the first and last date of each client. Once those rows were generated I joined that back up with the original input so that each row then had the finance amount information. To achieve the null values I used an union with the join and the right hand side of the join.
From there it was a case of data cleansing to remove the null values before sorting in ascending order of date and using the select tool to remove the irrelevant columns to match the given output.