转载自:https://blog.csdn.net/sap_jack/article/details/1538570
1、In the screen painter use Input/Output fields as your column headings and set the attributes to "Output only". Then create character data objects in your program with the same name as the I/O fields you created in the screen painter. .
2、Finally at PBO time move the correct text to the text field
3、参见MD61
转载自:http://blog.sina.com.cn/s/blog_c0978c9b0102v1dp.html
重点总结:
1. 将抬头文本字段替换成 IO字段
2.程序中定义对应的IO字段名称变量
"创建销售订单页面(200)列抬头动态描述字段 DATA: gs_so_item-kwmeng_io TYPE string, gs_so_item-zzyjh_io TYPE string, gs_so_item-zzkjh_io TYPE string.
3.在屏幕的PBO位置动态设置描述(一点要在table control输出之前,否则无法显示设置的描述)
PROCESS BEFORE OUTPUT. MODULE pbo_change_tb_col_text. *&SPWIZARD: PBO FLOW LOGIC FOR TABLECONTROL 'ZTC_200_1' MODULE ztc_200_1_change_tc_attr. *&SPWIZARD: MODULE ZTC_200_1_CHANGE_COL_ATTR. LOOP AT gt_so_item INTO gs_so_item WITH CONTROL ztc_200_1 CURSOR ztc_200_1-current_line. MODULE ztc_200_1_get_lines. *&SPWIZARD: MODULE ZTC_200_1_CHANGE_FIELD_ATTR ENDLOOP. MODULE status_0200.
其中MODULE pbo_change_tb_col_text. 就是设置动态描述的地方,位置在table control输出之前
MODULE pbo_change_tb_col_text OUTPUT. ********************************************************************** *动态设置列抬头文本 IF gs_so_head-auart IN ra_auart_th OR gs_so_head-auart IN ra_auart_th_sub. IF gs_so_head-auart IN ra_auart_th_sub_2. gs_so_item-kwmeng_io = '退回数量'. gs_so_item-zzyjh_io = '已退回数量'. gs_so_item-zzkjh_io = '可退回数量'. ELSE. gs_so_item-kwmeng_io = '退货数量'. gs_so_item-zzyjh_io = '已退货数量'. gs_so_item-zzkjh_io = '可退货数量'. ENDIF. ELSE. gs_so_item-kwmeng_io = '销售数量'. gs_so_item-zzyjh_io = '已交货数量'. gs_so_item-zzkjh_io = '可交货数量'. ENDIF. ENDMODULE.
4. 页面如下
扫描二维码关注公众号,回复:
1529012 查看本文章