The tFileOutputDelimited will create an empty file with the same file name before the file is read, that's why 0 rows are read from the file, about the code generation model, you can refer to this page on Talend Help Center.
As a workaround, cache the data into memory and read the data back in next subjob, eg: