2023 Feb 23 6:38 AM
Hi, I have multiple variables on same text note, how to suppress the variable whose value is initial,
because the variable which doesn't have any value showing a blank line it the print output.
Below &wa_final-so_desc4& and &wa_final-so_desc4& doesn't have any value assigned, but in print output they are showing as blank lines.
&WA_FINAL-SO_DESC1(C)&
&WA_FINAL-SO_DESC2(C)&
&WA_FINAL-SO_DESC3(C)&
&WA_FINAL-SO_DESC4(C)&
&WA_FINAL-SO_DESC5(C)&
&WA_FINAL-TI(C)&
2023 Feb 23 8:00 AM
Hey Mahesh. Check if this helps: https://answers.sap.com/questions/5230048/how-to-supress-blank-lines-in-smartforms.html
2023 Feb 23 8:34 AM
You could:
If you don't really need the (C) option (condense spaces), this way is the shortest code:
it_text = VALUE #(
( tdformat = '*' tdline = WA_FINAL-SO_DESC1 )
( tdformat = '*' tdline = WA_FINAL-SO_DESC2 )
( tdformat = '*' tdline = WA_FINAL-SO_DESC3 )
( tdformat = '*' tdline = WA_FINAL-SO_DESC4 )
( tdformat = '*' tdline = WA_FINAL-SO_DESC5 )
( tdformat = '*' tdline = WA_FINAL-TI ) ).
DELETE it_text WHERE tdline IS INITIAL.
Otherwise:
CLEAR it_text.
IF WA_FINAL-SO_DESC1 IS NOT INITIAL.
APPEND VALUE #( tdformat = '*' tdline = '&WA_FINAL-SO_DESC1(C)&' ) TO it_text.
ENDIF.
IF WA_FINAL-SO_DESC2 IS NOT INITIAL.
APPEND VALUE #( tdformat = '*' tdline = '&WA_FINAL-SO_DESC2(C)&' ) TO it_text.
ENDIF.
IF WA_FINAL-SO_DESC3 IS NOT INITIAL.
APPEND VALUE #( tdformat = '*' tdline = '&WA_FINAL-SO_DESC3(C)&' ) TO it_text.
ENDIF.
IF WA_FINAL-SO_DESC4 IS NOT INITIAL.
APPEND VALUE #( tdformat = '*' tdline = '&WA_FINAL-SO_DESC4(C)&' ) TO it_text.
ENDIF.
IF WA_FINAL-SO_DESC5 IS NOT INITIAL.
APPEND VALUE #( tdformat = '*' tdline = '&WA_FINAL-SO_DESC5(C)&' ) TO it_text.
ENDIF.
IF WA_FINAL-TI IS NOT INITIAL.
APPEND VALUE #( tdformat = '*' tdline = '&WA_FINAL-TI(C)&' ) TO it_text.
ENDIF.