2017-09-25 493 views
2

クラスcl_gui_alv_gridを使用してALV出力グリッドを作成しています。それらは全てセットされ、チェックボックスを含む列のすべてのレコードの選択したALV出力グリッドのチェックボックスを選択

ls_fcat-checkbox = 'X'. 
ls_fcat-edit = 'X'. 

enter image description here

:出力テーブルの列の一つはfieldcatalogの対応するレコードを使用して、チェックボックスのように定義されます選択されていない。私の質問は、ALVを表示するときに、選択されたチェックボックスをいくつかの行に対して実行するために、どのようなロジックを実装できるかです。

答えて

4

アルファグリッドの最初に表示されたデータに従ってチェックボックスを設定する場合は、条件が一致する場合、outtabチェックボックスフィールドにabap_true(= 'X')を入力します。 でない場合 fieldcatalogのcheckboxパラメータを使用すると、チェックされている場合は「X」、チェックされていない場合は「 '」と表示されます。

あなたは、彼らがALVグリッドの一部のフィールドを編集した後に、ユーザの入力に応じてチェックボックスを設定したい場合は、outtab変更するには、ALVグリッドイベントを次のようにします。私も、私が作ったいくつかのコメントを見つけた

METHODS: 
     handle_data_changed FOR EVENT data_changed OF cl_gui_alv_grid 
     IMPORTING er_data_changed, 

     handle_data_changed_finished FOR EVENT data_changed_finished OF cl_gui_alv_grid, "executed only if no errors, outtab holds changed data 

私がこれらのイベントに対処しなければならないとき

*&---------------------------------------------------------------------* 
*&  Method handle_data_changed 
*&---------------------------------------------------------------------* 
*  raised when at least one cell is modified in the ALV 
*  - modified entries are not stored in gt_outtab yet, but er_data_changed object 
*  - mt_good_cells holds every changed field thats valid according to type declaration 
*----------------------------------------------------------------------* 
*&---------------------------------------------------------------------* 
*&  Method handle_data_changed_finished 
*&---------------------------------------------------------------------* 
*  - raised when data validation is valid 
*  - NOW outtab holds valid changed data 
*----------------------------------------------------------------------* 
+0

はい、私はALVが表示された最初の瞬間をチェックしてみたかったのです。私はouttabを満たし、それは今大丈夫です。ありがとうございました –

関連する問題