=IFERROR(TEXTJOIN(",";TRUE;SORT(INDEX(UNIQUE(FILTER(SOURCE[BATCH];(SOURCE[Type]="")*(MONTH(SOURCE[DATE])=MONTH(TODAY()))*(SOURCE[C]=0)));;);;1));"")
This formula is a nested IFERROR, TEXTJOIN, SORT, INDEX, UNIQUE, and FILTER function that concatenates the unique values in the column BATCH of the table SOURCE where the value in the column Type is empty and the value in the column C is 0.
If there are no such cells, it concatenates the unique values in the column BATCH of the table SOURCE where the month in the column DATE is equal to the current month and the value in the column C is 0.
If there are no such cells, it returns an empty string.
Here’s how it works: