いいえ公共ん:
SAP技術
著者:
Matinal
オリジナルソース:
http://www.cnblogs.com/SAPmatinal/
序文
私たちは、私の公共の数に焦点を当てることができ、より良いレイアウトの数の国民は、より快適に読みます。
ボディパーツ
OOALVのためのいくつかの列は、顧客が入力することができますが、ユーザの入力、または特定の条件がALV表示する前に満たされているかどうかを判断する際に、満足している場合、それらは別々の行または少数編集することはできません。このフィールドのラインや編集、エフェクトを設定しますあなたは、このような場合:
実装は、手順
テーブルまたはに示すテーブルタイプ内1. [追加]フィールドを
CELLTAB TYPE LVC_T_STYL。
例えば:
TYPES:BEGIN OF T_SC、 BUKRS LIKE ANLZ- BUKRS、 ANLN1 LIKE 、ANLA-ANLN1 」模具编号 ANLN2 LIKE ANLA- ANLN2、 CELLTAB TYPE LVC_T_STYL、 END OF T_SCを。
2.レイアウト設定のコードを追加します
XXX_LAYOUT-STYLEFNAME = 'CELLTAB'を。
3. [プロパティの編集制御コードを達成
FORM FRM_INIT_STYLE_TAB。 DATA:LT_SFLIGHTの TYPEの TABLE OF SFLIGHT WITH HEADER LINE 、 LT_CELLTAB TYPE LVC_T_STYL、 LS_CELLTAB TYPE LVC_S_STYL、 L_INDEX TYPE I. LOOP AT IT_TAB INTO WA_TAB。 CLEAR:WA_TAB-CELLTAB。 「不为空会报错 のIF WA_TAB-CELLTABはIS INITIAL 。 L_INDEX = SY- TABIX。 REFRESHLT_CELLTAB。 LS_CELLTAB -FIELDNAME = ' ZCWCZD ' 。 IF WA_TAB-ZCWCZIは、IS NOT INITIAL と WA_TAB -ZCXCZIはIS INITIAL 。 LS_CELLTAB -style = CL_GUI_ALV_GRID => MC_STYLE_DISABLED。 ELSE 。 LS_CELLTAB -style = CL_GUI_ALV_GRID => MC_STYLE_ENABLED。 ENDIF 。 INSERT LS_CELLTAB INTO TABLE LT_CELLTABを。 INSERTの LINES OF LT_CELLTAB のINTO TABLEWA_TAB- CELLTAB。 MODIFY IT_TABをFROM WA_TAB INDEX L_INDEX。 ENDIF 。 ENDLOOP 。 ENDFORM。 「FRM_INIT_STYLE_TAB
表示する必要が呼び出すコード4.
のようなあなたは、セルを再編集する必要があり、それぞれの場所では、呼び出しか否かを判断します、:
MODULEの DISPLAY_FINANCIAL_DISPOSALのOUTPUT 。 " 设置可编辑字段 PERFORM FRM_INIT_STYLE_TABを。 " 展示AVL PERFORM DISPLAY_FINANCIAL_DISPOSALを。 ENDMODULE。 「DISPLAY_FINANCIAL_DISPOSAL OUTPUT
変更するために使用されるイベントデータと実際の状況