Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

linking the tables

Former Member
0 Likes
592

Hi,

how to get the characteristics values which equals the pricing group value description.

Hi,

how to get the characteristics values which equals the pricing group value description.

3 REPLIES 3
Read only

Former Member
0 Likes
556

u can find the value in CABN table

Read only

0 Likes
556

But for material price group value description non-consumable am unable to fetch

data in CABN table becoz in cabn there is similar field non-consumblnc parts.

how can i map these fields.

Read only

0 Likes
556

Hello,

Check this.


* Selection for class
  IF NOT S_KLART[] IS INITIAL.
    PERFORM F_GET_OBJECTNUMBER.
  ENDIF.
  IF G_CLASS_NE IS INITIAL.
* Fill Selection table fields
    PERFORM F_FILL_FIELDS.
* Selection for materials
    PERFORM F_GET_MATERIAL.
    SORT G_T_MAT BY MATNR.
* Read if necessary classification
    IF G_T_MATNR[] IS INITIAL AND ( NOT G_T_MAT[] IS INITIAL ).
      PERFORM F_GET_MAT_KLASS.
    ENDIF.
* Select the basic data text and fill final table
    PERFORM F_GET_BASIC_TEXT.
  ENDIF.

" *********************
*----------------------------------------------------------------------*
*   INCLUDE Z48M_MATDATA_DOWN_NEW_F01                                  *
*----------------------------------------------------------------------*
*&---------------------------------------------------------------------*
*&      Form  f_get_objectnumber
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM F_GET_OBJECTNUMBER.

  DATA: L_R_OBJECTS  TYPE TY_OBJECTS.
  DATA: L_OBJECTS TYPE TY_OBJECTS.
  CLEAR: G_T_OBJECTS.
  REFRESH: G_T_OBJECTS.

  SELECT A~CUOBJ A~OBJEK A~KLART B~ATINN B~ATZHL B~ATWRT B~ATFLV
         B~ATAWE B~ATFLB B~ATAW1 C~CLINT D~CLASS
    INTO CORRESPONDING FIELDS OF TABLE G_T_OBJECTS
    FROM INOB AS A INNER JOIN AUSP AS B
      ON A~CUOBJ = B~OBJEK AND
         A~KLART = B~KLART
         INNER JOIN KSSK AS C
         ON B~OBJEK = C~OBJEK AND
            B~KLART = C~KLART
         INNER JOIN KLAH AS D
         ON C~CLINT = D~CLINT
   WHERE A~OBJEK IN S_MATNR AND
         A~OBTAB EQ 'MARA'  AND
         A~KLART IN S_KLART AND
         B~ADZHL EQ '0000'  AND
         C~LKENZ EQ ' '     AND
         D~CLASS IN S_CLASS.

  CLEAR : G_T_KSML.
  REFRESH: G_T_KSML.

  SELECT CLINT IMERK KLART
   FROM KSML
   INTO CORRESPONDING FIELDS OF TABLE G_T_KSML
    FOR ALL ENTRIES IN G_T_OBJECTS
  WHERE CLINT EQ G_T_OBJECTS-CLINT.

  IF NOT G_T_KSML[] IS INITIAL.
    SORT G_T_KSML BY CLINT.
    SORT G_T_OBJECTS BY CUOBJ OBJEK  CLASS ATINN.
    LOOP AT G_T_KSML.

      READ TABLE G_T_OBJECTS WITH KEY ATINN = G_T_KSML-IMERK
                                      CLINT = G_T_KSML-CLINT
                                      BINARY SEARCH.
      IF SY-SUBRC NE 0.
        CLEAR: L_OBJECTS.
        READ TABLE G_T_OBJECTS WITH KEY KLART = G_T_KSML-KLART
                                        CLINT = G_T_KSML-CLINT
                                        BINARY SEARCH.
        IF SY-SUBRC = 0.
          MOVE-CORRESPONDING G_T_OBJECTS TO L_OBJECTS.
          CLEAR G_T_OBJECTS.
          G_T_OBJECTS-ATINN = G_T_KSML-IMERK.
          G_T_OBJECTS-KLART = G_T_KSML-KLART.
          G_T_OBJECTS-CLINT = G_T_KSML-CLINT.
          G_T_OBJECTS-CUOBJ = L_OBJECTS-CUOBJ.
          G_T_OBJECTS-OBJEK = L_OBJECTS-OBJEK.
          G_T_OBJECTS-CLASS = L_OBJECTS-CLASS.
          APPEND G_T_OBJECTS.
          CLEAR G_T_OBJECTS.
        ENDIF.
      ENDIF.
    ENDLOOP.
  ENDIF.
  DELETE ADJACENT DUPLICATES FROM G_T_OBJECTS
                               COMPARING OBJEK KLART CLASS ATINN ATAWE.
  IF NOT G_T_OBJECTS[] IS INITIAL.
    SORT G_T_OBJECTS BY CUOBJ OBJEK  CLASS ATINN.
    CLEAR: G_T_MATNR,G_R_MATNR,G_T_CLASSDESC,G_T_CHARDESC,G_T_CABN,
           G_T_CAWNT.
    REFRESH: G_T_MATNR,G_T_CLASSDESC,G_T_CHARDESC,G_T_CABN,G_T_CAWNT..

    SELECT CLINT KSCHL
      FROM SWOR
      INTO CORRESPONDING FIELDS OF TABLE G_T_CLASSDESC
       FOR ALL ENTRIES IN G_T_OBJECTS
     WHERE CLINT EQ G_T_OBJECTS-CLINT AND
           KLPOS EQ '01'              AND
           SPRAS EQ SY-LANGU.

    IF NOT G_T_CLASSDESC[] IS INITIAL.
      SORT G_T_CLASSDESC BY CLINT.
    ENDIF.

    SELECT ATINN ATBEZ
      FROM CABNT
      INTO CORRESPONDING FIELDS OF TABLE G_T_CHARDESC
       FOR ALL ENTRIES IN G_T_OBJECTS
     WHERE ATINN EQ G_T_OBJECTS-ATINN AND
           SPRAS EQ SY-LANGU.

    IF NOT G_T_CHARDESC[] IS INITIAL.
      SORT G_T_CHARDESC BY ATINN.
    ENDIF.

    SELECT ATINN MSEHI
      FROM CABN
      INTO CORRESPONDING FIELDS OF TABLE G_T_CABN
       FOR ALL ENTRIES IN G_T_OBJECTS
     WHERE ATINN EQ G_T_OBJECTS-ATINN.

    SELECT ATINN ATWTB
     FROM CAWNT
     INTO CORRESPONDING FIELDS OF TABLE G_T_CAWNT
      FOR ALL ENTRIES IN G_T_OBJECTS
    WHERE ATINN EQ G_T_OBJECTS-ATINN AND
          ADZHL EQ '0000'            AND
          SPRAS EQ SY-LANGU.

    LOOP AT G_T_OBJECTS.
      AT NEW OBJEK.
        G_R_MATNR-MATNR = G_T_OBJECTS-OBJEK.
        APPEND G_R_MATNR TO G_T_MATNR.
      ENDAT.
    ENDLOOP.
  ENDIF.

  IF G_T_MATNR[] IS INITIAL.
    G_CLASS_NE = 'X'.
  ENDIF.

ENDFORM.                    " f_get_objectnumber
*&---------------------------------------------------------------------*
*&      Form  f_fill_fields
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM F_FILL_FIELDS.

  CLEAR: G_R_SELECT_FIELDS,G_T_SELECT_FIELDS.
  REFRESH: G_T_SELECT_FIELDS.
*--- MARA Fields
  G_R_SELECT_FIELDS-FIELD = 'MARA~MATNR'.
  APPEND G_R_SELECT_FIELDS TO G_T_SELECT_FIELDS.
  G_R_SELECT_FIELDS-FIELD = 'MARA~ERSDA'.
  APPEND G_R_SELECT_FIELDS TO G_T_SELECT_FIELDS.
  G_R_SELECT_FIELDS-FIELD = 'MARA~ZZBCODE'.
  APPEND G_R_SELECT_FIELDS TO G_T_SELECT_FIELDS.
  G_R_SELECT_FIELDS-FIELD = 'MARA~WRKST'.
  APPEND G_R_SELECT_FIELDS TO G_T_SELECT_FIELDS.
  G_R_SELECT_FIELDS-FIELD = 'MARA~LAENG'.
  APPEND G_R_SELECT_FIELDS TO G_T_SELECT_FIELDS.
  G_R_SELECT_FIELDS-FIELD = 'MARA~BREIT'.
  APPEND G_R_SELECT_FIELDS TO G_T_SELECT_FIELDS.
  G_R_SELECT_FIELDS-FIELD = 'MARA~HOEHE'.
  APPEND G_R_SELECT_FIELDS TO G_T_SELECT_FIELDS.
  G_R_SELECT_FIELDS-FIELD = 'MARA~ZZELKEN'.
  APPEND G_R_SELECT_FIELDS TO G_T_SELECT_FIELDS.
  G_R_SELECT_FIELDS-FIELD = 'MARA~MFRPN'.
  APPEND G_R_SELECT_FIELDS TO G_T_SELECT_FIELDS.
  G_R_SELECT_FIELDS-FIELD = 'MARA~MFRNR'.
  APPEND G_R_SELECT_FIELDS TO G_T_SELECT_FIELDS.
  G_R_SELECT_FIELDS-FIELD = 'MARA~MATKL'.
  APPEND G_R_SELECT_FIELDS TO G_T_SELECT_FIELDS.
*--- MAKT Fields
  G_R_SELECT_FIELDS-FIELD = 'MAKT~MAKTX'.
  APPEND G_R_SELECT_FIELDS TO G_T_SELECT_FIELDS.

ENDFORM.                    " f_fill_fields
*&---------------------------------------------------------------------*
*&      Form  f_get_material
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM F_GET_MATERIAL.

  CLEAR: G_T_MAT.
  REFRESH: G_T_MAT.
  IF G_T_MATNR[] IS INITIAL.
    SELECT (G_T_SELECT_FIELDS)
    INTO CORRESPONDING FIELDS OF TABLE G_T_MAT
    FROM MARA
    INNER JOIN MAKT ON MAKT~MATNR EQ MARA~MATNR
                    AND MAKT~SPRAS EQ SY-LANGU
    WHERE MARA~MATNR   IN S_MATNR
      AND MARA~ERSDA   IN S_ERSDA
      AND MARA~ZZBCODE IN S_BCODE
      AND MARA~MFRPN   IN S_MFRPN
      AND MARA~MFRNR   IN S_MFRNR
      AND MARA~MATKL   IN S_MATKL
      AND MAKT~MAKTX   IN S_MAKTX.

  ELSE.
    SELECT (G_T_SELECT_FIELDS)
    INTO CORRESPONDING FIELDS OF TABLE G_T_MAT
    FROM MARA
    INNER JOIN MAKT ON MAKT~MATNR EQ MARA~MATNR
                   AND MAKT~SPRAS EQ SY-LANGU
      FOR ALL ENTRIES IN G_T_MATNR
    WHERE MARA~MATNR   EQ G_T_MATNR-MATNR
      AND MARA~ERSDA   IN S_ERSDA
      AND MARA~ZZBCODE IN S_BCODE
      AND MARA~MFRPN   IN S_MFRPN
      AND MARA~MFRNR   IN S_MFRNR
      AND MARA~MATKL   IN S_MATKL
      AND MAKT~MAKTX   IN S_MAKTX.
  ENDIF.
  IF NOT G_T_MAT[] IS INITIAL.
    CLEAR: G_T_LIEF.
    REFRESH: G_T_LIEF.
    SELECT LIFNR NAME1
      INTO CORRESPONDING FIELDS OF TABLE G_T_LIEF
      FROM LFA1
       FOR ALL ENTRIES IN G_T_MAT
     WHERE LIFNR EQ G_T_MAT-MFRNR.
  ENDIF.

ENDFORM.                    " f_get_material
*&---------------------------------------------------------------------*
*&      Form  f_get_mat_klass
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM F_GET_MAT_KLASS.


  DATA: BEGIN OF L_T_OBJECT OCCURS 0,
         OBJEK TYPE OBJNUM,
         MATNR TYPE MATNR,
        END OF L_T_OBJECT.
  DATA: L_OBJECTS TYPE TY_OBJECTS.
  CLEAR: L_T_OBJECT.
  REFRESH: L_T_OBJECT.
* Fill the object number
  LOOP AT G_T_MAT INTO G_R_MAT.
    AT NEW MATNR.
      L_T_OBJECT-OBJEK = G_R_MAT-MATNR.
      L_T_OBJECT-MATNR = G_R_MAT-MATNR.
      APPEND L_T_OBJECT.
    ENDAT.
  ENDLOOP.
  CLEAR:G_T_OBJECTS,G_T_CLASSDESC,G_T_CHARDESC,G_T_CABN,G_T_KSML,
        G_T_CAWNT.
  REFRESH: G_T_OBJECTS,G_T_CLASSDESC,G_T_CHARDESC,G_T_CABN,G_T_KSML,
           G_T_CAWNT.
* Get the material classification details
  SELECT A~CUOBJ A~OBJEK A~KLART B~ATINN B~ATZHL B~ATWRT B~ATFLV
         B~ATAWE B~ATFLB B~ATAW1 C~CLINT D~CLASS
    INTO CORRESPONDING FIELDS OF TABLE G_T_OBJECTS
    FROM INOB AS A INNER JOIN AUSP AS B
      ON A~CUOBJ = B~OBJEK AND
         A~KLART = B~KLART
         INNER JOIN KSSK AS C
         ON B~OBJEK = C~OBJEK AND
            B~KLART = C~KLART
         INNER JOIN KLAH AS D
         ON C~CLINT = D~CLINT
     FOR ALL ENTRIES IN L_T_OBJECT
   WHERE A~OBJEK EQ L_T_OBJECT-OBJEK AND
         A~OBTAB EQ 'MARA'  AND
         A~KLART IN S_KLART AND
         B~ADZHL EQ '0000'  AND
         C~LKENZ EQ ' '     AND
         D~CLASS IN S_CLASS.

  IF NOT G_T_OBJECTS[] IS INITIAL.
    SELECT CLINT IMERK KLART
      FROM KSML
      INTO CORRESPONDING FIELDS OF TABLE G_T_KSML
       FOR ALL ENTRIES IN G_T_OBJECTS
     WHERE CLINT EQ G_T_OBJECTS-CLINT.
  ENDIF.
  IF NOT G_T_KSML[] IS INITIAL.
    SORT G_T_KSML BY CLINT.
    SORT G_T_OBJECTS BY ATINN KLART.
    LOOP AT G_T_KSML.

      READ TABLE G_T_OBJECTS WITH KEY ATINN = G_T_KSML-IMERK.

      IF SY-SUBRC NE 0.
        CLEAR: L_OBJECTS.
        READ TABLE G_T_OBJECTS WITH KEY KLART = G_T_KSML-KLART.
        IF SY-SUBRC = 0.
          MOVE-CORRESPONDING G_T_OBJECTS TO L_OBJECTS.
          CLEAR G_T_OBJECTS.
          G_T_OBJECTS-ATINN = G_T_KSML-IMERK.
          G_T_OBJECTS-KLART = G_T_KSML-KLART.
          G_T_OBJECTS-CLINT = G_T_KSML-CLINT.
          G_T_OBJECTS-CUOBJ = L_OBJECTS-CUOBJ.
          G_T_OBJECTS-OBJEK = L_OBJECTS-OBJEK.
          G_T_OBJECTS-CLASS = L_OBJECTS-CLASS.
          APPEND G_T_OBJECTS.
          CLEAR G_T_OBJECTS.
        ENDIF.
      ENDIF.
    ENDLOOP.
  ENDIF.

  IF NOT G_T_OBJECTS[] IS INITIAL.

    SELECT CLINT KSCHL
      FROM SWOR
      INTO CORRESPONDING FIELDS OF TABLE G_T_CLASSDESC
       FOR ALL ENTRIES IN G_T_OBJECTS
     WHERE CLINT EQ G_T_OBJECTS-CLINT AND
           KLPOS EQ '01'              AND
           SPRAS EQ SY-LANGU.

    IF NOT G_T_CLASSDESC[] IS INITIAL.
      SORT G_T_CLASSDESC BY CLINT.
    ENDIF.

    SELECT ATINN ATBEZ
      FROM CABNT
      INTO CORRESPONDING FIELDS OF TABLE G_T_CHARDESC
       FOR ALL ENTRIES IN G_T_OBJECTS
     WHERE ATINN EQ G_T_OBJECTS-ATINN AND
           SPRAS EQ SY-LANGU.

    IF NOT G_T_CHARDESC[] IS INITIAL.
      SORT G_T_CHARDESC BY ATINN.
    ENDIF.

    SELECT ATINN MSEHI
    FROM CABN
    INTO CORRESPONDING FIELDS OF TABLE G_T_CABN
     FOR ALL ENTRIES IN G_T_OBJECTS
   WHERE ATINN EQ G_T_OBJECTS-ATINN.

    SELECT ATINN ATWTB
      FROM CAWNT
      INTO CORRESPONDING FIELDS OF TABLE G_T_CAWNT
       FOR ALL ENTRIES IN G_T_OBJECTS
     WHERE ATINN EQ G_T_OBJECTS-ATINN AND
           ADZHL EQ '0000'            AND
           SPRAS EQ SY-LANGU.

  ENDIF.

ENDFORM.                    " f_get_mat_klass
*&---------------------------------------------------------------------*
*&      Form  f_get_basic_text
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM F_GET_BASIC_TEXT.

*  DATA: LV_ATWRT LIKE MARA-VOLUM.
*  DATA: L_MSEHI TYPE CABN-MSEHI.
  DATA: CHAR1(30).
  DATA: CHAR2(30).
  DATA: ZEILEN LIKE TLINE OCCURS 10 WITH HEADER LINE.
  DATA: ZEILEN1 LIKE TLINE OCCURS 10 WITH HEADER LINE.

  CLEAR: G_T_LIST.
  REFRESH: G_T_LIST.
  SORT G_T_LIEF BY LIFNR.
* Get the basic data texts
  LOOP AT G_T_MAT INTO G_R_MAT.
    CLEAR:G_T_LIST-MATNR, G_T_LIST-ERSDA,G_T_LIST-MAKTX,
          G_T_LIST-ZZBCODE,G_T_LIST-WRKST,G_T_LIST-LAENG,G_T_LIST-BREIT,
          G_T_LIST-HOEHE,G_T_LIST-ZZELKEN,G_T_LIST-MFRNR,G_T_LIST-NAME1,
          G_T_LIST-MFRPN,G_T_LIST-TDETAIL1,G_T_LIST-TDETAIL2,
          G_T_LIST-TDETAIL3,G_T_LIST-TDETAIL4,G_T_LIST-TDETAIL5,
          G_T_LIST-TDETAIL6,G_T_LIST-KLART,G_T_LIST-CLASS,
          G_T_LIST-KSCHL,G_T_LIST-KLART,G_T_LIST-CLASS,G_T_LIST-KSCHL,
          G_T_LIST-ATBEZ,G_T_LIST-ATWRT,G_T_LIST-VALFROM,G_T_LIST-UNIT1,
          G_T_LIST-VALTO, G_T_LIST-UNIT2,G_T_LIST-MATKL.

    MOVE-CORRESPONDING G_R_MAT TO G_T_LIST.
    CLEAR ZEILEN.
    REFRESH ZEILEN.
    SELECT SINGLE * FROM STXH WHERE TDOBJECT = 'MATERIAL'
                                AND TDNAME   = G_T_LIST-MATNR
                                AND TDID     = 'GRUN'
*                                AND TDSPRAS  = SY-LANGU.
                                 AND TDSPRAS  = 'DE'.

    IF SY-SUBRC = 0.
      CALL FUNCTION 'READ_TEXT'
           EXPORTING
                ID                      = STXH-TDID
                LANGUAGE                = STXH-TDSPRAS
                NAME                    = STXH-TDNAME
                OBJECT                  = STXH-TDOBJECT
           TABLES
                LINES                   = ZEILEN
           EXCEPTIONS
                ID                      = 1
                LANGUAGE                = 2
                NAME                    = 3
                NOT_FOUND               = 4
                OBJECT                  = 5
                REFERENCE_CHECK         = 6
                WRONG_ACCESS_TO_ARCHIVE = 7
                OTHERS                  = 8.
      IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    ENDIF.

    READ TABLE ZEILEN INDEX 1.
    IF SY-SUBRC = 0.
      G_T_LIST-TDETAIL1 = ZEILEN-TDLINE.
    ENDIF.
    READ TABLE ZEILEN INDEX 2.
    IF SY-SUBRC = 0.
      G_T_LIST-TDETAIL3 = ZEILEN-TDLINE.
    ENDIF.
    READ TABLE ZEILEN INDEX 3.
    IF SY-SUBRC = 0.
      G_T_LIST-TDETAIL5 = ZEILEN-TDLINE.
    ENDIF.

    CLEAR ZEILEN1.
    REFRESH ZEILEN1.
    SELECT SINGLE * FROM STXH WHERE TDOBJECT = 'MATERIAL'
                                AND TDNAME   = G_T_LIST-MATNR
                                AND TDID     = 'GRUN'
                                AND TDSPRAS  = 'EN'.

    IF SY-SUBRC = 0.
      CALL FUNCTION 'READ_TEXT'
           EXPORTING
                ID                      = STXH-TDID
                LANGUAGE                = STXH-TDSPRAS
                NAME                    = STXH-TDNAME
                OBJECT                  = STXH-TDOBJECT
           TABLES
                LINES                   = ZEILEN1
           EXCEPTIONS
                ID                      = 1
                LANGUAGE                = 2
                NAME                    = 3
                NOT_FOUND               = 4
                OBJECT                  = 5
                REFERENCE_CHECK         = 6
                WRONG_ACCESS_TO_ARCHIVE = 7
                OTHERS                  = 8.
      IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    ENDIF.

    READ TABLE ZEILEN1 INDEX 1.
    IF SY-SUBRC = 0.
      G_T_LIST-TDETAIL2 = ZEILEN1-TDLINE.
    ENDIF.
    READ TABLE ZEILEN1 INDEX 2.
    IF SY-SUBRC = 0.
      G_T_LIST-TDETAIL4 = ZEILEN1-TDLINE.
    ENDIF.
    READ TABLE ZEILEN1 INDEX 3.
    IF SY-SUBRC = 0.
      G_T_LIST-TDETAIL6 = ZEILEN1-TDLINE.
    ENDIF.

    READ TABLE G_T_LIEF WITH KEY LIFNR = G_R_MAT-MFRNR
                                 BINARY SEARCH.
    IF SY-SUBRC = 0.
      G_T_LIST-NAME1 = G_T_LIEF-NAME1.
    ENDIF.

    SORT G_T_OBJECTS BY OBJEK KLART CLASS ATINN.

    IF S_CLASS IS INITIAL.
      LOOP AT G_T_OBJECTS INTO G_R_OBJECTS
          WHERE OBJEK EQ G_R_MAT-MATNR.
        CLEAR: G_T_LIST-KSCHL,G_T_LIST-ATBEZ,G_T_LIST-ATWRT,
               G_T_LIST-VALFROM,G_T_LIST-VALTO,G_T_LIST-UNIT1,
               G_T_LIST-UNIT2,G_T_LIST-CLASS,G_T_LIST-KLART.

        READ TABLE G_T_CLASSDESC WITH KEY CLINT = G_R_OBJECTS-CLINT
                                          BINARY SEARCH.
        IF SY-SUBRC = 0.
          G_T_LIST-KSCHL = G_T_CLASSDESC-KSCHL.
        ENDIF.
        READ TABLE G_T_CHARDESC WITH KEY ATINN = G_R_OBJECTS-ATINN
                                         BINARY SEARCH.
        IF SY-SUBRC = 0.
          G_T_LIST-ATBEZ = G_T_CHARDESC-ATBEZ.
        ENDIF.
        CLEAR: CHAR1,CHAR2.
        IF G_R_OBJECTS-ATWRT IS INITIAL.
          WRITE: G_R_OBJECTS-ATFLV TO CHAR1 EXPONENT 0 DECIMALS 3.
          CONDENSE CHAR1 NO-GAPS.
          WRITE: G_R_OBJECTS-ATFLB TO CHAR2 EXPONENT 0 DECIMALS 3.
          CONDENSE CHAR2 NO-GAPS.

*          G_T_LIST-VALFROM = CHAR1.
*          G_T_LIST-VALTO = CHAR2.
          IF  G_R_OBJECTS-ATFLV IS INITIAL.
            READ TABLE G_T_CAWNT WITH KEY ATINN = G_R_OBJECTS-ATINN.
            G_T_LIST-VALFROM = G_T_CAWNT-ATWTB.
          ELSE.
            IF G_R_OBJECTS-ATAWE IS INITIAL.
              READ TABLE G_T_CABN WITH KEY ATINN = G_R_OBJECTS-ATINN.
              G_T_LIST-UNIT1 = G_T_CABN-MSEHI.
            ELSE.
              G_T_LIST-UNIT1 = G_R_OBJECTS-ATAWE.
            ENDIF.
            IF G_R_OBJECTS-ATAW1 IS INITIAL.
              READ TABLE G_T_CABN WITH KEY ATINN = G_R_OBJECTS-ATINN.
              G_T_LIST-UNIT2 = G_T_CABN-MSEHI.
            ELSE.
              G_T_LIST-UNIT2 = G_R_OBJECTS-ATAW1.
            ENDIF.
          ENDIF.
        ENDIF.

        G_T_LIST-KLART = G_R_OBJECTS-KLART.
        G_T_LIST-CLASS = G_R_OBJECTS-CLASS.
        G_T_LIST-ATWRT = G_R_OBJECTS-ATWRT.
        G_T_LIST-VALFROM = CHAR1.
        G_T_LIST-VALTO = CHAR2.
        APPEND G_T_LIST.
        CLEAR G_R_OBJECTS.
      ENDLOOP.
      IF SY-SUBRC NE 0.
        APPEND G_T_LIST.
      ENDIF.
    ELSE.
      LOOP AT G_T_OBJECTS INTO G_R_OBJECTS
          WHERE OBJEK EQ G_R_MAT-MATNR.
        READ TABLE G_T_CLASSDESC WITH KEY CLINT = G_R_OBJECTS-CLINT
                                          BINARY SEARCH.
        IF SY-SUBRC = 0.
          G_T_LIST-KSCHL = G_T_CLASSDESC-KSCHL.
        ENDIF.
        CLEAR: G_T_CHARDESC.
        READ TABLE G_T_CHARDESC WITH KEY ATINN = G_R_OBJECTS-ATINN
                                         BINARY SEARCH.
        IF SY-SUBRC = 0.
          G_T_LIST-ATBEZ = G_T_CHARDESC-ATBEZ.
        ENDIF.
*        CLEAR G_T_CABN.
*        IF G_R_OBJECTS-ATWRT IS INITIAL.
*          CLEAR G_T_CABN.
*          READ TABLE G_T_CABN WITH KEY ATINN = G_R_OBJECTS-ATINN.
*          IF SY-SUBRC = 0.
*            CALL FUNCTION 'CEVA_CONVERT_FLOAT_TO_CHAR'
*                 EXPORTING
*                      FLOAT_IMP  = G_R_OBJECTS-ATFLV
*                      FORMAT_IMP = 'P10(4)'
*                 IMPORTING
*                      CHAR_EXP   = G_R_OBJECTS-ATWRT.
*            IF G_R_OBJECTS-ATWRT CA ',.'.
*              REPLACE ',' WITH '.' INTO G_R_OBJECTS-ATWRT.
*              REPLACE '.' WITH '.' INTO G_R_OBJECTS-ATWRT.
*            ENDIF.
*            MOVE G_R_OBJECTS-ATWRT TO LV_ATWRT.
*          ENDIF.
*        ENDIF.
        G_T_LIST-KLART = G_R_OBJECTS-KLART.
        G_T_LIST-CLASS = G_R_OBJECTS-CLASS.
        G_T_LIST-ATWRT = G_R_OBJECTS-ATWRT.
*        G_T_LIST-MSEHI = G_T_CABN-MSEHI.
        APPEND G_T_LIST.
      ENDLOOP.
    ENDIF.
    CLEAR: G_R_MAT.
  ENDLOOP.

ENDFORM.                    " f_get_basic_text

Hope this will helps you,

Cheers,

Vasanth