In Spain people generally eat late. This is party due to the timezone. Spain is as much west as England. England is in GMT but Spain is CET (central european time). This weird fact is still a leftover from the second world war in which Franco (spanish dictator) wanted to be in the same time zone as Berlin.
I think that Spanish (as same as Serbian), has a verb for act of EATING a specific-part-of-day meal (desayunar, almorzar, cenar). It is more precise translation than, for instance, HAVING a dinner. So, I think that that the answer " we ate a dinner..." at least, shuldn't be wrong. What do you think?