輸出ALV完整流程

1.定義一個(gè)SAP標(biāo)準(zhǔn)類型庫
TYPE-POOLS: SLIS.
2.定義一個(gè)LAYOUT式樣茵臭,和一個(gè)FIELDCAT字段格式峦耘,

DATA: G_F TYPE SLIS_T_FIELDCAT_ALV , "字段目錄內(nèi)表
       W_L TYPE SLIS_LAYOUT_ALV. "用于定義ALV表單的相關(guān)格式去枷、屬性

3.如果選擇屏幕復(fù)選框參考了表
TABLES : EKKO, EKPO.
4.定義一個(gè)結(jié)構(gòu)

TYPES: BEGIN OF G_TY,
   BOX TYPE C,
   EKORG TYPE EKKO-EKORG,
   BSART TYPE EKKO-BSART,
   LIFNR TYPE EKKO-LIFNR,
   EBELN TYPE EKKO-EBELN,
 END OF G_TY.

5.定義表和工作區(qū)

DATA: G_TAB TYPE TABLE OF G_TY,
       W_TAB LIKE LINE OF G_TAB.   或者 
       W_TAB TYPEG_TY.

6.定義屏幕

SELECTION-SCREEN BEGIN OF BLOCK XYY WITH FRAME TITLE TEXT-001.
PARAMETERS P_VKORG TYPE VBAK-VKORG OBLIGATORY.
  SELECT-OPTIONS: S_VBELN FOR VBAK-VBELN,
                  S_AUART FOR  VBAK-AUART.
SELECTION-SCREEN END OF BLOCK XYY.

這里只定義了單選框(PARAMETERS)和復(fù)選框(SELECT-OPTIONS)。一個(gè)用TYPE,一個(gè)用FOR。表查詢會(huì)依照屏幕條件篩選數(shù)據(jù)灶平。

7.初始化屏幕
INITIALIZATION.
加這個(gè)條件是告訴系統(tǒng)在這屏幕展示完蠢护,要查數(shù)據(jù)雅宾,展示報(bào)表了。

8.按順序執(zhí)行

START-OF-SELECTION.
  PERFORM FRM_SELDATA.
  PERFORM FRM_WRITE .
END-OF-SELECTION.  

9.數(shù)據(jù)查詢實(shí)現(xiàn)PERFORM 方法

FORM FRM_SELDATA .
SELECT:
  EKKO~EKORG
  EKKO~BSART
  EKKO~LIFNR
  INTO CORRESPONDING FIELDS OF TABLE G_TAB
  FROM EKKO INNER JOIN EKPO ON EKKO~EBELN = EKPO~EBELN
  WHERE EKKO~EKORG IN P_EKORG
  AND EKKO~BSART IN P_BSART
  AND EKKO~LIFNR IN P_LIFNR
  AND EKKO~EBELN IN P_EBELN.
ENDFORM. "FRM_SELDATA

查詢的時(shí)候三個(gè)表以下可以用 INNER JOIN葵硕,否則就用內(nèi)表傳遞眉抬,一個(gè)表一個(gè)表的查,再傳遞懈凹。

10.實(shí)現(xiàn)ALV輸出

FORM FRM_WRITE .
   PERFORM LAYOUT.              "輸出樣式
   PERFORM INIT_FIELDCA.       "輸出屬性
   PERFORM LISTADO.                "展示
ENDFORM. " FRM_WRITE

(1)實(shí)現(xiàn)ALV輸出具體的方法:定義ALV樣式

FORM LAYOUT .
   W_L-BOX_FIELDNAME = 'BOX'.
   W_L-ZEBRA = 'X'.         "顏色間隔
  W_L-COLWIDTH_OPTIMIZE = 'X'.       "自適應(yīng)寬度
ENDFORM. " LAYOUT_19

(2)

FORM INIT_FIELDCA .
   CLEAR G_F.
  G_F-FIELDNAME = 'EKORG'. "必須為大寫
  G_F-SELTEXT_S  = '采購組織'.
  G_F-SELTEXT_M  = G_F-SELTEXT_S.
  G_F-SELTEXT_L  = G_F-SELTEXT_S.
   APPEND G_F.
CLEAR G_F.
G_F-FIELDNAME = 'TXZ01'.
G_F-SELTEXT_S  = '行文本'.
G_F-SELTEXT_M  = G_F-SELTEXT_S.
G_F-SELTEXT_L  = G_F-SELTEXT_S.
G_F-EDIT  = 'X' .
G_F-REF_FIELDNAME  = 'TXZ01'.  "參考字段名
G_F-REF_TABNAME    = 'EKPO'.   "參考表名
APPEND G_F.
ENDFORM. " INIT_FIELDCAT_19  

(3)輸出

FORM LISTADO .
   CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      I_CALLBACK_PROGRAM = SY-REPID   "當(dāng)前程序名
     I_CALLBACK_USER_COMMAND    = 'USER_COMMAND' "自定義按鈕響應(yīng)事件
     I_CALLBACK_PF_STATUS_SET   = 'SET_PF_STATUS' "設(shè)置ALV的自定義按鈕
     IS_LAYOUT          = W_L "輸出樣式
     IT_FIELDCAT        = G_F[]  "字段定義描述表
"     I_CALLBACK_TOP_OF_PAGE = 'F_TOP_OF_PAGE'
     I_SAVE             = 'A'
       " I_SAVE有4個(gè)可選值: I_SAVE= '' --- 不能保存格式蜀变;
      " I_SAVE = 'X' --- 保存標(biāo)準(zhǔn)格式;
      " I_SAVE = 'U' --- 保存特定用戶格式蘸劈;
      " I_SAVE = 'A' --- 保存標(biāo)準(zhǔn)格式和特定用戶格式昏苏。
   TABLES
      T_OUTTAB           = G_TAB   "內(nèi)表輸出名稱
   EXCEPTIONS
      PROGRAM_ERROR      = 1
      OTHERS             = 2.
   IF SY-SUBRC <> 0.
     MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
     WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
   ENDIF.
 ENDFORM. " LISTADO
 FORM SET_PF_STATUS USING RT_EXTAB TYPE SLIS_T_EXTAB.
   SET PF-STATUS 'STATUS' .
 ENDFORM.

11.寫USER_COMMAND的一個(gè)事件(這個(gè)作業(yè)要求實(shí)現(xiàn)更改數(shù)據(jù),點(diǎn)擊按鈕且保存成功)

FORM USER_COMMAND USING R_UCOMM LIKE SY-UCOMM
                         RS_SELFIELD TYPE SLIS_SELFIELD.
   DATA: GV_GRID TYPE REF TO CL_GUI_ALV_GRID.
   "刷新
  CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
     IMPORTING
       E_GRID = GV_GRID.
   CALL METHOD GV_GRID->CHECK_CHANGED_DATA.
    CASE R_UCOMM.
       WHEN 'SKIP'.
         IF SY-SUBRC = 0.
         ENDIF.
     ENDCASE.
 ENDFORM. "LISTADO
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末威沫,一起剝皮案震驚了整個(gè)濱河市贤惯,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌棒掠,老刑警劉巖孵构,帶你破解...
    沈念sama閱讀 212,454評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異烟很,居然都是意外死亡颈墅,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,553評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門雾袱,熙熙樓的掌柜王于貴愁眉苦臉地迎上來恤筛,“玉大人,你說我怎么就攤上這事芹橡《咎常” “怎么了?”我有些...
    開封第一講書人閱讀 157,921評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵林说,是天一觀的道長(zhǎng)煎殷。 經(jīng)常有香客問我,道長(zhǎng)腿箩,這世上最難降的妖魔是什么豪直? 我笑而不...
    開封第一講書人閱讀 56,648評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮珠移,結(jié)果婚禮上弓乙,老公的妹妹穿的比我還像新娘末融。我一直安慰自己,他們只是感情好唆貌,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,770評(píng)論 6 386
  • 文/花漫 我一把揭開白布滑潘。 她就那樣靜靜地躺著,像睡著了一般锨咙。 火紅的嫁衣襯著肌膚如雪语卤。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,950評(píng)論 1 291
  • 那天酪刀,我揣著相機(jī)與錄音粹舵,去河邊找鬼。 笑死骂倘,一個(gè)胖子當(dāng)著我的面吹牛眼滤,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播历涝,決...
    沈念sama閱讀 39,090評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼诅需,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了荧库?” 一聲冷哼從身側(cè)響起堰塌,我...
    開封第一講書人閱讀 37,817評(píng)論 0 268
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎分衫,沒想到半個(gè)月后场刑,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,275評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡蚪战,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,592評(píng)論 2 327
  • 正文 我和宋清朗相戀三年牵现,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片邀桑。...
    茶點(diǎn)故事閱讀 38,724評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡瞎疼,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出壁畸,到底是詐尸還是另有隱情贼急,我是刑警寧澤,帶...
    沈念sama閱讀 34,409評(píng)論 4 333
  • 正文 年R本政府宣布瓤摧,位于F島的核電站,受9級(jí)特大地震影響玉吁,放射性物質(zhì)發(fā)生泄漏照弥。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,052評(píng)論 3 316
  • 文/蒙蒙 一进副、第九天 我趴在偏房一處隱蔽的房頂上張望这揣。 院中可真熱鬧悔常,春花似錦、人聲如沸给赞。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,815評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽片迅。三九已至残邀,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間柑蛇,已是汗流浹背芥挣。 一陣腳步聲響...
    開封第一講書人閱讀 32,043評(píng)論 1 266
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留耻台,地道東北人空免。 一個(gè)月前我還...
    沈念sama閱讀 46,503評(píng)論 2 361
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像盆耽,于是被迫代替她去往敵國(guó)和親蹋砚。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,627評(píng)論 2 350

推薦閱讀更多精彩內(nèi)容

  • 一摄杂、ALV是什么坝咐? ALV(SAP LIST VIEW)是一種比較美觀的報(bào)表顯示工具,具有網(wǎng)格顯示方式匙姜,有排序畅厢、篩...
    hitammy閱讀 8,487評(píng)論 0 5
  • 2017.11.11,在女兒過的第三個(gè)光棍節(jié)的日子氮昧,帶她去拍了三周歲紀(jì)念照框杜。猛生想法,過幾年帶你和爸爸拍套婚紗照袖肥,...
    芯芯媽閱讀 266評(píng)論 0 0
  • “最怕一生碌碌無為咪辱,卻說平凡難能可貴∽底椋”很矛盾吧油狂, 凌晨一點(diǎn)鐘,樓道的公廁里只有我一個(gè)人寸癌。不是失眠专筷,是拉肚子…… ...
    韓可愛的李過兒閱讀 353評(píng)論 1 1
  • 愛吃磷蛹,是一種態(tài)度,能吃溪烤,是一種樂趣味咳,懂吃庇勃,是一種享受,會(huì)吃是一種學(xué)問槽驶,真正的生活者责嚷,源于對(duì)食物的無比熱愛。 同樣掂铐,...
    獨(dú)立行走的魚閱讀 2,343評(píng)論 23 40
  • 劉邦罕拂,一個(gè)流氓出身。卻成為中國(guó)歷史上第一個(gè)貧民皇帝堡纬,他的成功出乎很多人的意料聂受,為何一個(gè)流氓能得道天下呢。 ...
    淚已干心已碎閱讀 424評(píng)論 0 2