it's a lot shorter to write the code as it is very repetitive in the FM-way.
So The general way to do this:
- create the dynamic table and pass pass onto a table field symbol
- create the salv using the table field symbol
- read the structure once per element and assign the texts based on the RTTS information
this makes your code look way cleaner, easier to read and better understandable (if you of course capsule those blocks in methods)
It is no big deal to switch to the OO pattern, but makes future changes probably way easier.
That's why I suggest it, especially for the readability and the good overview.