*&---------------------------------------------------------------------**& Report ZTEST_PILLAR*&*&---------------------------------------------------------------------**&*&*&---------------------------------------------------------------------*REPORT ztest_pillar.TYPE-POOLS: VRM ,TRUXS,ICON,SLIS.TABLES: mara, j_3apgen.data: G_ATWRT type ATWRT, G_YEAR(4) TYPE N, G_DATE TYPE DATS.DATA: IT_CHAR_VALUES TYPE TABLE OF BAPI_CHAR_VALUES.DATA: IT_CHAR TYPE TABLE OF BAPI_CHAR.DATA:GT_RAW_DATA TYPE TRUXS_T_TEXT_DATA.PARAMETERS: RB_IMP RADIOBUTTON GROUP GP1 USER-COMMAND FCD1 DEFAULT 'X'.SELECTION-SCREEN BEGIN OF BLOCK B002 WITH FRAME TITLE TEXT-005. PARAMETERS:P_FILE TYPE RLGRAP-FILENAME modif id IMP ."OBLIGATORY .SELECTION-SCREEN END OF BLOCK B002.PARAMETERS: RB_MAKE RADIOBUTTON GROUP GP1 .SELECTION-SCREEN BEGIN OF BLOCK B001 WITH FRAME TITLE TEXT-004.SELECT-OPTIONS: s_matnr for mara-matnr modif id MKE, s_grid for j_3apgen-j_3akordx modif id MKE, s_matkl for mara-matkl modif id MKE, s_brand for G_ATWRT modif id MKE, S_YEAR FOR G_YEAR modif id MKE, S_SEAN FOR G_ATWRT modif id MKE, S_DATE FOR G_DATE modif id MKE,"OBLIGATORY, S_PRJ FOR G_ATWRT modif id MKE, S_TYPE FOR G_ATWRT modif id MKE, S_MAXTY FOR G_ATWRT modif id MKE.PARAMETERS: P_RANGE type char12 AS LISTBOX VISIBLE LENGTH 12 DEFAULT '1' modif id MKE.SELECTION-SCREEN END OF BLOCK B001.INITIALIZATION. PERFORM F_INITIAL.AT SELECTION-SCREEN OUTPUT. loop at screen. if screen-group1 = 'MKE' AND RB_MAKE IS INITIAL . screen-invisible = '1'. screen-input = '0'. modify screen. endif. if screen-group1 = 'IMP' AND RB_IMP IS INITIAL . screen-invisible = '1'. screen-input = '0'. modify screen. endif. endloop.AT SELECTION-SCREEN on value-request for s_brand-low. PERFORM F_VALUE_REQUEST USING 'S_BRAND-LOW' 'T001'.AT SELECTION-SCREEN on value-request for S_BRAND-HIGH. PERFORM F_VALUE_REQUEST USING 'S_BRAND-HIGH' 'T001'.AT SELECTION-SCREEN on value-request for S_YEAR-low. PERFORM F_VALUE_REQUEST USING 'S_YEAR-LOW' 'T002'.AT SELECTION-SCREEN on value-request for S_YEAR-HIGH. PERFORM F_VALUE_REQUEST USING 'S_YEAR-HIGH' 'T002'.AT SELECTION-SCREEN on value-request for S_SEAN-low. PERFORM F_VALUE_REQUEST USING 'S_SEAN-LOW' 'T003'.AT SELECTION-SCREEN on value-request for S_SEAN-HIGH. PERFORM F_VALUE_REQUEST USING 'S_SEAN-HIGH' 'T003'.AT SELECTION-SCREEN on value-request for S_DATE-low. PERFORM F_VALUE_REQUEST USING 'S_DATE-LOW' 'T006'.AT SELECTION-SCREEN on value-request for S_DATE-HIGH. PERFORM F_VALUE_REQUEST USING 'S_DATE-HIGH' 'T006'.AT SELECTION-SCREEN on value-request for S_PRJ-low. PERFORM F_VALUE_REQUEST USING 'S_PRJ-LOW' 'T007'.AT SELECTION-SCREEN on value-request for S_PRJ-HIGH. PERFORM F_VALUE_REQUEST USING 'S_PRJ-HIGH' 'T007'.AT SELECTION-SCREEN on value-request for S_TYPE-low. PERFORM F_VALUE_REQUEST USING 'S_TYPE-LOW' 'T009'.AT SELECTION-SCREEN on value-request for S_TYPE-HIGH. PERFORM F_VALUE_REQUEST USING 'S_TYPE-HIGH' 'T009'.AT SELECTION-SCREEN on value-request for S_MAXTY-low. PERFORM F_VALUE_REQUEST USING 'S_MAXTY-LOW' 'T017'.AT SELECTION-SCREEN on value-request for S_MAXTY-HIGH. PERFORM F_VALUE_REQUEST USING 'S_MAXTY-HIGH' 'T017'.FORM F_VALUE_REQUEST USING VALUE(P_NAME) VALUE(P_TNAME). DATA: LW_CHAR_VALUES TYPE BAPI_CHAR_VALUES. DATA: BEGIN OF LIT_CHARVALUE OCCURS 0, ATWRT TYPE CAWN-ATWRT, END OF LIT_CHARVALUE. DATA: l_retfield TYPE HELP_INFO-DYNPROFLD. DATA: L_CHAR TYPE BAPI_CHAR. DATA: L_DATE TYPE DATS. refresh LIT_CHARVALUE[]. clear LIT_CHARVALUE. LOOP AT IT_CHAR_VALUES INTO LW_CHAR_VALUES WHERE NAME_CHAR = P_TNAME . CASE P_TNAME. WHEN 'T006'."日期格式 CALL FUNCTION 'CTCV_CONVERT_FLOAT_TO_DATE' EXPORTING FLOAT = LW_CHAR_VALUES-NUM_VAL_FM IMPORTING DATE = LIT_CHARVALUE-ATWRT. L_DATE = LIT_CHARVALUE-ATWRT. WRITE L_DATE TO LIT_CHARVALUE-ATWRT . APPEND LIT_CHARVALUE. clear LIT_CHARVALUE. WHEN OTHERS. LIT_CHARVALUE-ATWRT = LW_CHAR_VALUES-DESCR_CVAL. APPEND LIT_CHARVALUE. clear LIT_CHARVALUE. ENDCASE. ENDLOOP. l_retfield = P_NAME. CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST' EXPORTING* DDIC_STRUCTURE = ' ' RETFIELD = 'ATWRT'* PVALKEY = ' ' DYNPPROG = SY-REPID DYNPNR = SY-DYNNR DYNPROFIELD = l_retfield VALUE_ORG = 'S' TABLES VALUE_TAB = LIT_CHARVALUE[] EXCEPTIONS PARAMETER_ERROR = 1 NO_VALUES_FOUND = 2 OTHERS = 3 . 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. " F_VALUE_REQUESTFORM F_INITIAL .**选择范围初始值* PERFORM F_RANGE_INITIAL.* 取出成品的所有特征 CALL FUNCTION 'BAPI_CLASS_GET_CHARACTERISTICS' EXPORTING CLASSNUM = 'C002' CLASSTYPE = '001'* LANGU_ISO =* LANGU_INT =* KEY_DATE = SY-DATUM* WITH_VALUES = 'X'* IMPORTING* RETURN = TABLES CHARACTERISTICS = IT_CHAR CHAR_VALUES = IT_CHAR_VALUES.*CLEAR GV_EAN11.ENDFORM. " F_INITIAL