SAP Smartforms 动态更改某些项目的位置
SAP Smartforms dynamically change position of certain items
所以我得到了这段文本,我无法事先知道它的长度,因为它取决于内部 table 中有多少条目(见下文)。 table 在我的报告中提供给 Smartforms FM。文本本身适用于动态文本变量,但在该文本下方我需要一条水平线。线条需要始终位于文本下方。目前我只得到了一条固定位置的线,并没有得到我想要的结果
如果可能的话,我怎样才能让线条根据文本的长度改变位置?这样它就一直在文本的正下方,不不管文本有多少行。
DATA: l_string TYPE string,
lt_stream_lines TYPE STANDARD TABLE OF string.
loop at i_tab.
* reading one line of i_tab into l_string.
APPEND l_string TO lt_stream_lines.
APPEND '' TO lt_stream_lines.
endloop.
CALL FUNCTION 'CONVERT_STREAM_TO_ITF_TEXT'
EXPORTING
stream_lines = lt_stream_lines
lf = 'X'
TABLES
itf_text = gv_text.
* gv_text then has the full text I want to display
您必须有一个 Main Window 包含您的 Text 元素,后跟一个用于水平线的虚拟 Template 元素(一个空单元格,顶部水平边框为黑色,其他边框透明)。
通过上下文菜单创建模板元素:
画边框(这里我夸大了比例"a little bit"!):
预览结果:
所以我得到了这段文本,我无法事先知道它的长度,因为它取决于内部 table 中有多少条目(见下文)。 table 在我的报告中提供给 Smartforms FM。文本本身适用于动态文本变量,但在该文本下方我需要一条水平线。线条需要始终位于文本下方。目前我只得到了一条固定位置的线,并没有得到我想要的结果
如果可能的话,我怎样才能让线条根据文本的长度改变位置?这样它就一直在文本的正下方,不不管文本有多少行。
DATA: l_string TYPE string,
lt_stream_lines TYPE STANDARD TABLE OF string.
loop at i_tab.
* reading one line of i_tab into l_string.
APPEND l_string TO lt_stream_lines.
APPEND '' TO lt_stream_lines.
endloop.
CALL FUNCTION 'CONVERT_STREAM_TO_ITF_TEXT'
EXPORTING
stream_lines = lt_stream_lines
lf = 'X'
TABLES
itf_text = gv_text.
* gv_text then has the full text I want to display
您必须有一个 Main Window 包含您的 Text 元素,后跟一个用于水平线的虚拟 Template 元素(一个空单元格,顶部水平边框为黑色,其他边框透明)。
通过上下文菜单创建模板元素:
画边框(这里我夸大了比例"a little bit"!):
预览结果: