Hi Marve,
It is always advisable to use do_init_context method to fill data in assignment blocks, because do_prapare_output method will trigger every time. If you are using iv_first_time eq abap_true condition in do_prepare_output then it is fine to use the method.
Regards,
Dharmakasi.