ABAP:ALV
slis_t_fieldcat_alv是表內欄位的整體,slis_fieldcat_alv是某一個欄位的內容,將欄位的內容寫到 slis_fieldcat_alv中,然後append到slis_t_fieldcat_alv,後者是整個列表的標題,在顯示的時候用到。
slis_fieldcat_alv中的部分欄位及意義:fieldname是對應內表中哪個欄位,必須。seltext_s/m/l是標題的 名字,(一個即可)必須。col_pos表示所在位置,是第一列還是第二列。。intlen表示可以篩選的長度,如果不輸得話有可能在篩選的時候顯示不夠 長。hotsot = 'x'表示可以點它來顯示次表。
slis_t_event是event的整體可看作event的集合,感覺可以用來寫表頭。。slis_alv_event是某個event, 需要將slis_alv_event append到slis_t_event.它可以包含圖片和listheader等,也就是說listheader等是靠event來顯示的。
slis_t_listheader是listheader的集合,slis_listheader是某個listheader。將slis_listheader賦值後append到slis_t_listheader中。它是內表的表頭
slis_listheader 包含:typ :H = header,S = Selection,A = action. key :是和s對應的,是那個的標題吧. info:可以是變數和賦值的。跟在key的標題後面,是個表達值
函式:reuse_alv_events_get:將各個事件的名字寫到slis_t_event的name中。這樣,可以在後面,根據名字的不同,對不同的event付不同的form,來實現不同功能。
fieldcat屬性
col_pos 輸出列
tabname 標籤名稱
currency(5) 貨幣單位
quantity(3) 計量單位
qfieldname 參考計量單位的欄位名稱
round ROUND 值
exponent(3) 流動表示的指數
key(1) 關鍵欄位
icon(1) 作為圖示輸出
symbol(1) 輸出作為符號
checkbox(1) 作為複選框輸出
just(1) 對齊
lzero(1) 輸出前導零
no_sign(1) 輸出抑制符號
no_zero(1) 為輸出隱藏零
edit_mask 為輸出編輯掩碼
emphasize(4) 帶有顏色的高亮列
fix_column(1) 固定列
do_sum(1) 總計列值
no_out(1) 列沒有輸出
tech(1) 技術欄位
outputlen 列的字元寬度
decimals_out 能控制小數點的位數
這裡面很多都是最後一個對後面的都有影響。。。比如你想固定左邊的前3列 那么在第一列的key = 'x'.然後在要在第四列處key = ' '.這樣前3列固定了(只能在grid類型下使用?)