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

Value not get fetched

former_member187748
Active Contributor
0 Likes
1,655

Hi all,

i am using this FM to fetch AREA IN SQUAREMETER (ATINN56) ,but it is not fething the data.Can anyone sujjest me  what to do with this code to fetch data.

ELSEIF V_ATNAM EQ 'SUPERAREASQMT'.         

           ITAB-ATINN56 = ITAB1-ATWRT.

           CALL FUNCTION 'C14W_NUMBER_CHAR_CONVERSION'

            EXPORTING

              I_FLOAT              =  ITAB1-ATFLV

*       I_DEC                = 0

              I_DECIMALS           = 2

            IMPORTING

              E_STRING             = ITAB-ATINN56

*       E_FLOAT              =

*       E_DEC                =

*       E_DECIMALS           =

            EXCEPTIONS

              NUMBER_TOO_BIG       = 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.

14 REPLIES 14
Read only

PeterJonker
Active Contributor
0 Likes
1,431

the statement:

ITAB-ATINN56 = ITAB1-ATWRT.

Confuses me a bit. Are these tables ?

It is ALWAYS better to declare separate work areas, so it is clear if you are delaing with the table or the table work area (header line).

Read only

0 Likes
1,431

This message was moderated.

Read only

0 Likes
1,431

This message was moderated.

Read only

varun_maharshi
Active Participant
0 Likes
1,431

Your question is not clear. Do you want to convert the area from one unit to other or do you want to fetch the Area in sq mts from some database field?

Read only

0 Likes
1,431

This message was moderated.

Read only

0 Likes
1,431

I simply want to fetch area from my DATABASE,

I have written my code above please see it, and then please let me know how to get those values.

Read only

Former Member
0 Likes
1,431

What i get is follwong (correct me if i am wrong) : You have an article which you can configure or classify. You read a certain characteristic which holds the Area in squaremeters.

Since characteristics values get stored in CHAR, you want to convert it to a number, so that you can calulate with it, or make a nice output format.

So your only problem is the conversion from char to number, right?

you can simply move the char value to a number variable e.G.

DATA: lv_char   type c length 30 VALUE '3.123,33'.,

            lv_number   type kbetr.

lv_number = lv_char.

If the char value is a valid number it will work, otherwise it will DUMP.

to be a bit more sure that it will work you can eliminate those thousand seperators, and make sure the decimal is a comma (yeah thats the internal format).

Read only

Former Member
0 Likes
1,431

Hi Sanjeev,

If you want to fetch the value of characteristic 'SQUAREMETER', then follow the mentioned steps,

1) Put a select on CABN table and get the internal characteristic number (CABN-ATINN) for CABN-ATNAM = SQUAREMETER.

2) Now put a select on AUSP table passing the ATINN obtained above and get the value in AUSP-ATWRT.

You get the value in AUSP-ATWRT.

Please revert if something is not clear.

Regards,

Ankit

Read only

0 Likes
1,431

Hi Ankit,

here is the complete code,plz review it and tell me how to fetch the value of FIELD ATINN56.

*&---------------------------------------------------------------------*


*& Report  ZST_SD_RPT01_NEW1

*&

*&---------------------------------------------------------------------*

*&

*&

*&---------------------------------------------------------------------*

REPORT  ZST_SD_RPT01_NEW1 NO STANDARD PAGE HEADING LINE-SIZE 275.

*type-pools

TYPE-POOLS: SLIS.

*TABLES

TABLES: MARD,  "Storage Location Data for Material

         MARA,  "General Material Data

         AUSP,  "Characteristic Values

         CABNT, "Characteristic Descriptions

         VBAP,  "Sales Document: Item Data

         VBAK,  "Sales Document: Header Data

         MVKE,  "Sales Data for Material

         T001L,

         T001W.

*ALV SPECIFIC DECLARATIONS

DATA : T_EVENTS TYPE SLIS_T_EVENT.

DATA : T_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV.

DATA : T_SORT TYPE SLIS_T_SORTINFO_ALV.

DATA : T_LIST TYPE SLIS_T_LISTHEADER.

DATA : V_REPID TYPE SY-REPID.

DATA : V_TOP_OF_PAGE TYPE SLIS_FORMNAME VALUE 'TOP_OF_PAGE'.

DATA : V_USER_COMMAND TYPE SLIS_FORMNAME VALUE 'USER_COMMAND'.

DATA : S_GETINFO TYPE SLIS_KEYINFO_ALV.

DATA : S_LAYOUT TYPE SLIS_LAYOUT_ALV.

DATA : G_SAVE(1)            TYPE  C                      ,

        G_EXIT(1)            TYPE  C                      ,

        G_VARIANT            LIKE  DISVARIANT             ,

        GX_VARIANT           LIKE  DISVARIANT             .

*TYPE DECLARATIONS.

DATA : BEGIN OF WA_ITAB,

        LGORT   TYPE MARD-LGORT,                      " project Number

        LGOBE   TYPE T001L-LGOBE,                     " project discription

        MATNR   TYPE MARD-MATNR,                      " Flat number

        SPART   TYPE VBAK-SPART,                      " Division

        VKORG   TYPE VBAK-VKORG,                      " Sales Organization

        VTWEG   TYPE VBAK-VTWEG,                      " Distribution Channel

        KWMENG  TYPE I,                               " quantity

        ATINN01 TYPE AUSP-ATWRT,                      " Category

        ATINN02 TYPE AUSP-ATWRT,                      " Tower

        ATINN03 TYPE AUSP-ATWRT,                      " Type

        ATINN04 TYPE AUSP-ATWRT,                      " Furnished

        ATINN05 TYPE AUSP-ATWRT,                      " A/C Fitted

        ATINN06 TYPE AUSP-ATWRT,                      " Power Backup

        ATINN07 TYPE AUSP-ATWRT,                      " Modular kitchen

        ATINN12 TYPE AUSP-ATWRT,                      " Study Room

        ATINN13 TYPE AUSP-ATWRT,                      " Store Room

        ATINN14 TYPE AUSP-ATWRT,                      " Servent Room

        ATINN16 TYPE CHAR30,                          " Super Area

        ATINN56 TYPE CHAR30,                          " SUPERAREASQMT   

        ATINN17 TYPE P,                               " Covered Area

        ATINN18 TYPE P,                               " Carpet Area

        ATINN25 TYPE AUSP-ATWRT,                      " Floor

        ATINN29 TYPE AUSP-ATWRT,                      " Phase

        ATINN30 TYPE AUSP-ATWRT,                      " Block

        STATUS  TYPE STRING,                          " Status

        VBELN   TYPE VBAP-VBELN,                      " File number

        ERDAT   TYPE VBAP-ERDAT,                      " Order Date

        KUNNR   TYPE VBAK-KUNNR,                      " Customer code

        NAME1   TYPE KNA1-NAME1,                      " Customer name

        LINE_COLOR(04),                               " For color

       END OF WA_ITAB.

TYPES : BEGIN OF TY_ITAB1 ,

        WERKS TYPE MARD-WERKS,

        LGORT TYPE MARD-LGORT,                      " project Number

        LGOBE TYPE T001L-LGOBE,                     " project discription

        MTART TYPE MARA-MTART,                      " Material Type

        SPART TYPE MARA-SPART,                      " Division

        VKORG TYPE MVKE-VKORG,                      " Sales Organization

        VTWEG TYPE MVKE-VTWEG,                      " Distribution Channel

        MATNR TYPE MARD-MATNR,                      " Flat Number

        ATINN TYPE AUSP-ATINN,                      " Charecterstick

        ATWRT TYPE AUSP-ATWRT,                      " Charecterstick value

        ATNAM TYPE CABN-ATNAM,                      " Charecterstick name

        ATFLV TYPE AUSP-ATFLV,

        END OF TY_ITAB1.

TYPES : BEGIN OF TY_ITAB2  ,

        MATNR TYPE VBAP-MATNR,                      " Flat number

        VBELN TYPE VBAP-VBELN,                      " File Number

        ERDAT TYPE VBAP-ERDAT,                      " Document Date

        ERZET TYPE VBAP-ERZET,                      " Document time

        ABGRU TYPE VBAP-ABGRU,                      " Reason for Rejection

        KUNNR TYPE VBAK-KUNNR,                      " Customer Number

        SPART TYPE VBAK-SPART,                      " Division

        VKORG TYPE VBAK-VKORG,                      " Sales Organisation

        VTWEG TYPE VBAK-VTWEG,                      " Distribution Channel

        NAME1 TYPE KNA1-NAME1,                      " Customer name

        END OF TY_ITAB2.

TYPES: BEGIN OF TY_MARD,

        MATNR   TYPE   MARD-MATNR,

        WERKS   TYPE   MARD-WERKS,

        LGORT   TYPE   MARD-LGORT,

               END OF TY_MARD.

TYPES: BEGIN OF TY_MARA,

        MATNR    TYPE   AUSP-OBJEK,

        MTART    TYPE   MARA-MTART,

        SPART    TYPE   MARA-SPART,

        ATINN    TYPE   AUSP-ATINN,

        ATWRT    TYPE   AUSP-ATWRT,

        ATFLV    TYPE   AUSP-ATFLV,

        END OF TY_MARA.

TYPES: BEGIN OF TY_MARA1,

        MATNR    TYPE   MARA-MATNR,

        MTART    TYPE   MARA-MTART,

        SPART    TYPE   MARA-SPART,

        END OF TY_MARA1.

TYPES: BEGIN OF TY_MVKE,

        MATNR TYPE AUSP-OBJEK,

        VKORG TYPE MVKE-VKORG,

        VTWEG TYPE MVKE-VTWEG,

        END OF TY_MVKE.

TYPES: BEGIN OF TY_AUSP,

        OBJEK TYPE AUSP-OBJEK,

        ATINN TYPE AUSP-ATINN,

        ATWRT TYPE AUSP-ATWRT,

        ATFLV TYPE AUSP-ATFLV,

        END OF TY_AUSP.

TYPES: BEGIN OF TY_T001L,

        WERKS TYPE T001L-WERKS,

        LGORT TYPE T001L-LGORT,

        LGOBE TYPE T001L-LGOBE,

        END OF TY_T001L.

TYPES: BEGIN OF TY_VBAP,

        VBELN TYPE VBAP-VBELN,

        MATNR TYPE VBAP-MATNR,

        ERDAT TYPE VBAP-ERDAT,

        ABGRU TYPE VBAP-ABGRU,

        END OF TY_VBAP.

TYPES: BEGIN OF TY_VBAK,

        VBELN TYPE VBAK-VBELN,

        AUART TYPE VBAK-AUART,

        VKORG TYPE VBAK-VKORG,

        VTWEG TYPE VBAK-VTWEG,

        SPART TYPE VBAK-SPART,

        KUNNR TYPE VBAK-KUNNR,

        END OF TY_VBAK.

TYPES: BEGIN OF TY_KNA1,

        KUNNR TYPE KNA1-KUNNR,

        NAME1 TYPE KNA1-NAME1,

        END OF TY_KNA1.

TYPES: BEGIN OF TY_CABN,

        ATINN TYPE CABN-ATINN,

        ATNAM TYPE CABN-ATNAM,

        END OF TY_CABN.

*TABLE DECLARATIONS

DATA: ITAB     LIKE STANDARD TABLE OF WA_ITAB  WITH HEADER LINE.

DATA: ITAB1    TYPE STANDARD TABLE OF TY_ITAB1 WITH HEADER LINE.

DATA: ITAB2    TYPE STANDARD TABLE OF TY_ITAB2 WITH HEADER LINE.

DATA: IT_MARD  TYPE STANDARD TABLE OF TY_MARD  WITH HEADER LINE.

DATA: IT_MVKE  TYPE STANDARD TABLE OF TY_MVKE  WITH HEADER LINE.

DATA: IT_MARA1  TYPE STANDARD TABLE OF TY_MARA1  WITH HEADER LINE.

DATA: IT_MARA  TYPE STANDARD TABLE OF TY_MARA  WITH HEADER LINE.

DATA: IT_AUSP  TYPE STANDARD TABLE OF TY_AUSP  WITH HEADER LINE.

DATA: IT_CABN  TYPE STANDARD TABLE OF TY_CABN  WITH HEADER LINE.

DATA: IT_T001L TYPE STANDARD TABLE OF TY_T001L WITH HEADER LINE.

DATA: IT_VBAP  TYPE STANDARD TABLE OF TY_VBAP  WITH HEADER LINE.

DATA: IT_VBAK  TYPE STANDARD TABLE OF TY_VBAK  WITH HEADER LINE.

DATA: IT_KNA1  TYPE STANDARD TABLE OF TY_KNA1  WITH HEADER LINE.

DATA: WA_AUSP  TYPE TY_AUSP.

*VARIABLE DECLARATIONS

DATA : FLTNO(04),

        BLKNO(03),

        V_ATNAM(30),

        V_MATNR1 TYPE MARD-MATNR,

        FLRNO(02),

        VAL TYPE I,

        V_FIELD(20) TYPE C,

        V_VALUE TYPE VBAP-VBELN.

DATA : V_COUNTER TYPE I VALUE 0.

DATA : BEGIN OF IT_MAT OCCURS 0 ,

        MATNR LIKE MAKT-MATNR ,

   END OF IT_MAT .

*SELECTION SCREEN

SELECTION-SCREEN BEGIN OF BLOCK BLK1 WITH FRAME TITLE TEXT-001.

SELECTION-SCREEN : SKIP .

SELECTION-SCREEN: BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-002.

SELECT-OPTIONS: S_WERKS FOR T001w-WERKS OBLIGATORY.

SELECT-OPTIONS S_LGORT FOR T001l-LGORT OBLIGATORY.

SELECT-OPTIONS S_MATNR FOR MARD-MATNR .

SELECT-OPTIONS S_VKORG FOR MVKE-VKORG NO-EXTENSION NO INTERVALS.

SELECT-OPTIONS S_VTWEG FOR MVKE-VTWEG NO-EXTENSION NO INTERVALS.

SELECT-OPTIONS S_SPART FOR MARA-SPART NO-EXTENSION NO INTERVALS.

SELECTION-SCREEN: END OF BLOCK B2.

SELECTION-SCREEN : SKIP .

SELECTION-SCREEN : SKIP .

SELECTION-SCREEN: BEGIN OF BLOCK B3 WITH FRAME TITLE TEXT-003.

PARAMETERS: P_VARI LIKE DISVARIANT-VARIANT. " ALV Variant

SELECTION-SCREEN: END OF BLOCK B3.

SELECTION-SCREEN END OF BLOCK BLK1.

INITIALIZATION.

*if s_lgort-low = 'R006'.

*  S_MATNR-LOW = 'R006*'.

*  ENDIF.

   PERFORM INIT.

*AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_vari.

*  PERFORM f4_for_variant.

START-OF-SELECTION.

   PERFORM GET_DATA.

*&---------------------------------------------------------------------*

*&END-OF-SELECTION.

*&---------------------------------------------------------------------*

END-OF-SELECTION.

IF ITAB[] IS NOT INITIAL.

   PERFORM SUB_COMMENT_WRITE.

   PERFORM SUB_LAYOUT.

*  IF g_save EQ space .

**    PERFORM  initialize_variant .

*  ENDIF .

   PERFORM SUB_CALL_ALV.

ENDIF.

*&---------------------------------------------------------------------*

*&      Form  BILLING_INIT

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM INIT .

   V_REPID = SY-REPID.

   PERFORM SUB_EVENTS.

   PERFORM SUB_FIELDCAT.

   PERFORM SORT.

ENDFORM.                    " BILLING_INIT

*&---------------------------------------------------------------------*

*&      Form  SUB_EVENTS

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM SUB_EVENTS .

   DATA : WA_EVENT TYPE SLIS_ALV_EVENT.

   CALL FUNCTION 'REUSE_ALV_EVENTS_GET'

     EXPORTING

       I_LIST_TYPE = 0

     IMPORTING

       ET_EVENTS   = T_EVENTS.

   SORT T_EVENTS.

   READ TABLE T_EVENTS WITH KEY NAME = SLIS_EV_TOP_OF_PAGE BINARY SEARCH

                            INTO WA_EVENT.

   MOVE V_TOP_OF_PAGE TO WA_EVENT-FORM.

   IF SY-SUBRC EQ 0.

     APPEND WA_EVENT TO T_EVENTS.

   ENDIF.

   SORT T_EVENTS.

   READ TABLE T_EVENTS WITH KEY NAME = SLIS_EV_USER_COMMAND BINARY SEARCH

                       INTO WA_EVENT.

   MOVE V_USER_COMMAND TO WA_EVENT-FORM.

   IF SY-SUBRC EQ 0.

     APPEND WA_EVENT TO T_EVENTS.

   ENDIF.

ENDFORM.                    " SUB_EVENTS

*&---------------------------------------------------------------------*

*&      Form  SUB_FIELDCAT

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM SUB_FIELDCAT .

   PERFORM INSERT_FIELD USING :

   'LGORT'        'Project No.'         'X'        4     ,

   'LGOBE'        'Project Name'        SPACE      16  ,

   'MATNR'        'Flat No.'            SPACE      18 ,

   'SPART'        'Division'            SPACE      02,

   'VKORG'        'Sales Organ.'        SPACE      04,

   'VTWEG'        'Distribution Channel'  SPACE    02,

   'KWMENG'       'Qty'                 SPACE      02  ,

   'ATINN01'      'Category'            SPACE      20  ,

   'ATINN02'      'Tower'               SPACE      20,

   'ATINN03'      'Type'                SPACE      20,

   'ATINN04'      'Furnished'           SPACE      20 ,

   'ATINN05'      'A/C Fitted'          SPACE      20 ,

   'ATINN06'      'Power Backup'        SPACE      20,

   'ATINN07'      'Modular Kitchen'     SPACE      20 ,

   'ATINN12'      'Study Room'          SPACE      20,

   'ATINN13'      'Store Room'          SPACE      20 ,

   'ATINN14'      'Servent Room'        SPACE      20 ,

   'ATINN16'      'Super Area in SQFT'  SPACE       16 ,

   'ATINN56'      'Superarea in SQMT'   SPACE      20

   'ATINN25'      'Floor'                SPACE      20,

   'ATINN29'      'Phase'                SPACE      20,

   'ATINN30'      'Block'                SPACE      20,

   'ATINN17'      'Carpet Area'         space      16  ,

   'ATINN18'      'Covered Area'        space      16 ,

    'STATUS'       'Status'              SPACE      20,

   'VBELN'        'File Number'         SPACE      10,

   'ERDAT'        'Date Of Sale'        SPACE      08 ,

   'KUNNR'        'Sold To Party'       SPACE      10 ,

   'NAME1'        'Customer Name'       SPACE      20 .

ENDFORM.                    " SUB_FIELDCAT

*&---------------------------------------------------------------------*

*&      Form  INSERT_FIELD

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM INSERT_FIELD  USING    VALUE(P_FNAME)

                             VALUE(P_TNAME)

                             VALUE(P_KEY)

                             VALUE(P_LENGTH).

   DATA : WA_FIELDCAT TYPE SLIS_FIELDCAT_ALV.

   V_COUNTER = V_COUNTER + 1.

   WA_FIELDCAT-COL_POS = V_COUNTER.

   WA_FIELDCAT-FIELDNAME = P_FNAME.

   WA_FIELDCAT-SELTEXT_M = P_TNAME.

   WA_FIELDCAT-KEY = P_KEY.

   WA_FIELDCAT-OUTPUTLEN = P_LENGTH.

   IF WA_FIELDCAT-COL_POS = 7

     OR WA_FIELDCAT-COL_POS = 13

     OR WA_FIELDCAT-COL_POS = 14

     OR WA_FIELDCAT-COL_POS = 15.

     WA_FIELDCAT-DO_SUM = 'X'.

   ENDIF.

   APPEND WA_FIELDCAT TO T_FIELDCAT.

ENDFORM.                    " INSERT_FIELD

*&---------------------------------------------------------------------*

*&      Form  GET_DATA

*&---------------------------------------------------------------------*

*   THIS SUBROUTIN IS USED TO GET DATA FROM DATABASE TABLES INTO

*    INTERNAL TABLES

*----------------------------------------------------------------------*

FORM GET_DATA .

   DATA : V_MATNR TYPE MARD-MATNR.

   SELECT MATNR

          WERKS

          LGORT

          FROM MARD CLIENT SPECIFIED INTO TABLE IT_MARD

          WHERE MANDT EQ SY-MANDT

          AND   MATNR IN S_MATNR

          AND   WERKS IN S_WERKS

          AND   LGORT IN S_LGORT

          AND   LVORM EQ ''.

   SORT IT_MARD BY MATNR.

   IF IT_MARD[] IS NOT INITIAL.

     SELECT WERKS

            LGORT

            LGOBE

            FROM T001L CLIENT SPECIFIED INTO TABLE IT_T001L

            FOR ALL ENTRIES IN IT_MARD

            WHERE MANDT EQ SY-MANDT

            AND   WERKS EQ IT_MARD-WERKS

            AND   LGORT EQ IT_MARD-LGORT.

     SELECT MARA~MATNR

            MARA~MTART

            MARA~SPART

            AUSP~ATINN

            AUSP~ATWRT

            AUSP~ATFLV

            FROM MARA JOIN AUSP ON AUSP~OBJEK EQ MARA~MATNR  INTO TABLE IT_MARA

            FOR ALL ENTRIES IN IT_MARD

            WHERE  MTART EQ 'Z003' AND

                   MARA~SPART IN S_SPART AND

                   MARA~LVORM EQ '' AND

                   MARA~MATNR EQ IT_MARD-MATNR.

     LOOP AT IT_MARA .

       IT_MARA1-MATNR = IT_MARA-MATNR.

       IT_MARA1-MTART = IT_MARA-MTART.

       IT_MARA1-SPART = IT_MARA-SPART.

       APPEND IT_MARA1.

     ENDLOOP.

     SORT IT_MARA1 BY MATNR.

     SELECT ATINN

            ATNAM

            FROM CABN CLIENT SPECIFIED INTO TABLE IT_CABN

            FOR ALL ENTRIES IN IT_mara

            WHERE MANDT EQ SY-MANDT

            AND   ATINN EQ IT_mara-ATINN.

     SELECT MATNR

            VKORG

            VTWEG

            FROM MVKE CLIENT SPECIFIED INTO TABLE IT_MVKE

            FOR ALL ENTRIES IN IT_MARA1

            WHERE MANDT EQ SY-MANDT

            AND   MATNR EQ IT_MARA1-MATNR.

*Appending data to itab1

     LOOP AT IT_MARA.

       ITAB1-MATNR = IT_MARA-MATNR.

       ITAB1-MTART = IT_MARA-MTART.

       ITAB1-SPART = IT_MARA-SPART.

       ITAB1-ATINN = IT_MARA-ATINN.

       ITAB1-ATWRT = IT_MARA-ATWRT.

       ITAB1-ATFLV = IT_MARA-ATFLV.

       APPEND ITAB1.

     ENDLOOP.

*  LOOP AT itab1 .

*    LOOP AT it_mvke WHERE matnr EQ itab1-matnr.

*      itab1-vkorg = it_mvke-vkorg.

*      itab1-vtweg = it_mvke-vtweg.

*      MODIFY itab1.

*    ENDLOOP.

*  ENDLOOP.

     SORT ITAB1 BY MATNR.

     SORT IT_MVKE BY MATNR.

     LOOP AT ITAB1.

       READ TABLE IT_MVKE WITH KEY MATNR = ITAB1-MATNR BINARY SEARCH.

       ITAB1-VKORG = IT_MVKE-VKORG.

       ITAB1-VTWEG = IT_MVKE-VTWEG.

       MODIFY ITAB1.

       CLEAR IT_MVKE.

     ENDLOOP.

     SORT IT_MARD BY MATNR.

     LOOP AT ITAB1 .

       READ TABLE IT_MARD WITH KEY MATNR = ITAB1-MATNR BINARY SEARCH.

       ITAB1-WERKS = IT_MARD-WERKS.

       ITAB1-LGORT = IT_MARD-LGORT.

       MODIFY ITAB1.

       CLEAR IT_MARD.

     ENDLOOP.

     SORT IT_T001L BY WERKS .

     LOOP AT ITAB1.

       READ TABLE IT_T001L WITH KEY WERKS = ITAB1-WERKS BINARY SEARCH .

       ITAB1-LGOBE = IT_T001L-LGOBE.

       MODIFY ITAB1.

       CLEAR IT_T001L.

     ENDLOOP.

     SORT IT_CABN BY ATINN.

     LOOP AT ITAB1.

       READ TABLE IT_CABN WITH KEY ATINN = ITAB1-ATINN BINARY SEARCH.

       ITAB1-ATNAM = IT_CABN-ATNAM.

       MODIFY ITAB1.

       CLEAR IT_CABN.

     ENDLOOP.

*  DELETE itab1 WHERE mtart NE 'Z003'.

     SORT ITAB1 BY MATNR.

     IF ITAB1[] IS  INITIAL.

       MESSAGE 'No DATA FOUND' TYPE 'I'.

     ELSE.

       SORT ITAB1 BY MATNR .

       LOOP AT ITAB1 .

         IT_MAT-MATNR = ITAB1-MATNR .

         APPEND IT_MAT .

         CLEAR IT_MAT .

       ENDLOOP .

       DELETE ADJACENT DUPLICATES FROM IT_MAT COMPARING ALL FIELDS .

       SELECT VBELN

              MATNR

              ERDAT

              ABGRU

              FROM VBAP CLIENT SPECIFIED INTO TABLE IT_VBAP

              FOR ALL ENTRIES IN IT_MAT

              WHERE MANDT EQ SY-MANDT

              AND   MATNR EQ IT_MAT-MATNR.

       SORT IT_VBAP BY VBELN    .

       SELECT VBELN

              AUART

              VKORG

              VTWEG

              SPART

              KUNNR

              FROM VBAK CLIENT SPECIFIED INTO TABLE IT_VBAK

              FOR ALL ENTRIES IN IT_VBAP

              WHERE MANDT EQ SY-MANDT

              AND   VBELN EQ IT_VBAP-VBELN

              AND (  AUART EQ 'ZORD'

              OR    AUART EQ 'YORD'

              or    AUART EQ 'ZRDV' )                

              AND   VKORG IN S_VKORG

              AND   VTWEG IN S_VTWEG

              AND   SPART IN S_SPART .

       SELECT KUNNR

              NAME1

              FROM KNA1 CLIENT SPECIFIED INTO TABLE IT_KNA1

              FOR ALL ENTRIES IN IT_VBAK

              WHERE MANDT EQ SY-MANDT

              AND   KUNNR EQ IT_VBAK-KUNNR.

       LOOP AT IT_VBAP.

         ITAB2-MATNR = IT_VBAP-MATNR.

         ITAB2-VBELN = IT_VBAP-VBELN.

         ITAB2-ERDAT = IT_VBAP-ERDAT.

         ITAB2-ABGRU = IT_VBAP-ABGRU.

         APPEND ITAB2.

       ENDLOOP.

       SORT IT_VBAK BY VBELN.

       LOOP AT ITAB2.

         READ TABLE IT_VBAK WITH KEY VBELN = ITAB2-VBELN BINARY SEARCH.

         ITAB2-KUNNR = IT_VBAK-KUNNR.

         ITAB2-SPART = IT_VBAK-SPART.

         ITAB2-VKORG = IT_VBAK-VKORG.

         ITAB2-VTWEG = IT_VBAK-VTWEG.

         MODIFY ITAB2.

         CLEAR IT_VBAK.

       ENDLOOP.

       SORT IT_KNA1 BY KUNNR.

       LOOP AT ITAB2.

         READ TABLE IT_KNA1 WITH KEY KUNNR = ITAB2-KUNNR BINARY SEARCH.

         ITAB2-NAME1 = IT_KNA1-NAME1.

         MODIFY ITAB2.

         CLEAR IT_KNA1.

       ENDLOOP.

       SORT ITAB2 BY ABGRU MATNR ASCENDING.

       DELETE ITAB2 WHERE KUNNR EQ ''.

       DELETE ADJACENT DUPLICATES FROM ITAB2.

       VAL = 1.

       SORT ITAB1 BY MATNR.

       LOOP AT ITAB1.

         V_ATNAM = ITAB1-ATNAM.

         IF V_ATNAM EQ 'CATEGORY'.

           ITAB-ATINN01 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'TOWER'.

           ITAB-ATINN02 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'TYPE'.

           ITAB-ATINN03 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'FURNISHED'.

           ITAB-ATINN04 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'ACFITTED'.

           ITAB-ATINN05 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'POWERBACKUP'.

           ITAB-ATINN06 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'MODULARKITCHEN'.

           ITAB-ATINN07 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'STUDYROOM'.

           ITAB-ATINN12 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'STOREROOM'.

           ITAB-ATINN13 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'SERVENTROOM'.

           ITAB-ATINN14 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'FLAT_FLOOR'.

           ITAB-ATINN25 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'PHASE'.

           ITAB-ATINN29 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'BLOCK'.

           ITAB-ATINN30 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'SUPERAREA1'.

           ITAB-ATINN16 = ITAB1-ATWRT.

*******************************************************************************

           ELSEIF V_ATNAM EQ 'SUPERAREASQMT'.         

             if itab-atinn56 is initial.

             ITAB-ATINN56 = ITAB1-ATWRT.

             endif.

              ELSEIF V_ATNAM EQ 'SUPERAREASQMT'.

           CALL FUNCTION 'C14W_NUMBER_CHAR_CONVERSION'

            EXPORTING

              I_FLOAT              =  ITAB1-ATFLV

*       I_DEC                = 0

              I_DECIMALS           = 2

            IMPORTING

              E_STRING             = ITAB-ATINN56

*       E_FLOAT              =

*       E_DEC                =

*       E_DECIMALS           =

            EXCEPTIONS

              NUMBER_TOO_BIG       = 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.                                  

**************************************************************************

          ELSEIF V_ATNAM EQ 'SUPERAREA2'.

          if itab-atinn16 is initial.

           ITAB-ATINN16 = ITAB1-ATWRT.

           endif.

         ELSEIF V_ATNAM EQ 'SUPERAREA'.

           CALL FUNCTION 'C14W_NUMBER_CHAR_CONVERSION'

            EXPORTING

              I_FLOAT              =  ITAB1-ATFLV

*       I_DEC                = 0

              I_DECIMALS           = 2

            IMPORTING

              E_STRING             = ITAB-ATINN16

*       E_FLOAT              =

*       E_DEC                =

*       E_DECIMALS           =

            EXCEPTIONS

              NUMBER_TOO_BIG       = 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.

         ELSEIF V_ATNAM EQ 'COVEREDAREA1'.

           CALL FUNCTION 'MOVE_CHAR_TO_NUM'

             EXPORTING

               CHR             = ITAB1-ATWRT

             IMPORTING

               NUM             = ITAB-ATINN17

             EXCEPTIONS

               CONVT_NO_NUMBER = 1

               CONVT_OVERFLOW  = 2.

*      itab-atinn17 = itab1-atwrt.

         ELSEIF V_ATNAM EQ 'CARPETAREA1'.

           CALL FUNCTION 'MOVE_CHAR_TO_NUM'

             EXPORTING

               CHR             = ITAB1-ATWRT

             IMPORTING

               NUM             = ITAB-ATINN18

             EXCEPTIONS

               CONVT_NO_NUMBER = 1

               CONVT_OVERFLOW  = 2.

*      itab-atinn18 = itab1-atwrt.

         ENDIF.

         AT END OF MATNR.

           LOOP AT ITAB2 WHERE MATNR = ITAB1-MATNR.

*        if sy-tabix gt 1.

*          continue.

*        endif.

             IF ITAB2-MATNR = V_MATNR.

               CONTINUE.

             ENDIF.

             IF ITAB2-ABGRU EQ ''.

               ITAB-STATUS = 'BOOKED'.

               ITAB-VBELN = ITAB2-VBELN.

               ITAB-ERDAT = ITAB2-ERDAT.

               ITAB-KUNNR = ITAB2-KUNNR.

               ITAB-NAME1 = ITAB2-NAME1.

               ITAB-VKORG = ITAB2-VKORG.

               ITAB-VTWEG = ITAB2-VTWEG.

               ITAB-SPART = ITAB2-SPART.

             ENDIF.

             V_MATNR = ITAB2-MATNR.

           ENDLOOP.

           IF V_MATNR1 EQ ITAB1-MATNR.

             CLEAR ITAB.

             CONTINUE.

           ENDIF.

           IF ITAB-STATUS = ''.

             ITAB-STATUS = 'AVAILABLE'.

             ITAB-VKORG = ITAB1-VKORG.

*        itab-vtweg = itab1-vtweg.

             ITAB-SPART = ITAB1-SPART.

           ENDIF.

           ITAB-KWMENG = '1'.

           ITAB-LGOBE = ITAB1-LGOBE.

           ITAB-LGORT = ITAB1-LGORT.

           ITAB-MATNR = ITAB1-MATNR.

*      V_matnr = itab1-matnr.

*      V_fltno =

           INSERT ITAB INDEX VAL.

           VAL = VAL + 1.

           CLEAR ITAB.

           CLEAR V_MATNR.

           V_MATNR1 = ITAB1-MATNR.

         ENDAT.

       ENDLOOP.

     ENDIF.

     DATA: LD_COLOR TYPE C.

*loop at itab2.

     LOOP AT ITAB INTO WA_ITAB.

       IF WA_ITAB-STATUS = 'AVAILABLE'.

         LD_COLOR = 5.

       ELSE.

         LD_COLOR = 6.

       ENDIF.

       CONCATENATE 'C' LD_COLOR '10' INTO WA_ITAB-LINE_COLOR.

*  wa_ekko-line_color = 'C410'.

       MODIFY ITAB FROM WA_ITAB.

     ENDLOOP.

   ELSE.

     MESSAGE 'No Data found' TYPE 'I' .

     CALL SELECTION-SCREEN 1000.

*    SET  SCREEN 0.

   ENDIF.

ENDFORM.                    " GET_DATA

*&---------------------------------------------------------------------*

*&      Form  SUB_COMMENT_WRITE

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM SUB_COMMENT_WRITE .

   DATA : WA_LIST TYPE SLIS_LISTHEADER.

   WA_LIST-TYP = 'H'.

   WA_LIST-INFO = 'Flat / Shop Availability Report'.

   APPEND WA_LIST TO T_LIST.

ENDFORM.                    " SUB_COMMENT_WRITE

*&---------------------------------------------------------------------*

*&      Form  SUB_LAYOUT

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM SUB_LAYOUT .

   S_LAYOUT-DETAIL_POPUP = 'X'.

*  s_layout-zebra = 'X'.

   S_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.

   S_LAYOUT-INFO_FIELDNAME =      'LINE_COLOR'.

ENDFORM.                    " SUB_LAYOUT

*&---------------------------------------------------------------------*

*&      Form  SORT

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

*  -->  p1        text

*  <--  p2        text

*----------------------------------------------------------------------*

FORM SORT .

   DATA : WA_SORT TYPE SLIS_SORTINFO_ALV.

   WA_SORT-SPOS = 18.

   WA_SORT-FIELDNAME = 'STATUS'.

   WA_SORT-DOWN = 'X'.

*  wa_sort-subtot = 'X'.

   APPEND WA_SORT TO T_SORT.

   WA_SORT-SPOS = 5.

   WA_SORT-FIELDNAME = 'VTWEG'.

*  wa_sort-down = 'X'.

   WA_SORT-SUBTOT = 'X'.

   APPEND WA_SORT TO T_SORT.

ENDFORM.                    " SORT

*&---------------------------------------------------------------------*

*&      Form  SUB_CALL_ALV

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM SUB_CALL_ALV .

   CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

    EXPORTING

*   I_INTERFACE_CHECK                 = ' '

*   I_BYPASSING_BUFFER                = ' '

*   I_BUFFER_ACTIVE                   = ' '

      I_CALLBACK_PROGRAM                = V_REPID

*   I_CALLBACK_PF_STATUS_SET          = 'SET_PF_STATUS'

    I_CALLBACK_USER_COMMAND           = 'USER_COMMAND'

*   I_CALLBACK_TOP_OF_PAGE            = ' '

*   I_CALLBACK_HTML_TOP_OF_PAGE       = ' '

*   I_CALLBACK_HTML_END_OF_LIST       = ' '

*   I_STRUCTURE_NAME                  =

*   I_BACKGROUND_ID                   = ' '

*   I_GRID_TITLE                      =

*   I_GRID_SETTINGS                   =

      IS_LAYOUT                         = S_LAYOUT

      IT_FIELDCAT                       = T_FIELDCAT[]

*   IT_EXCLUDING                      =

*   IT_SPECIAL_GROUPS                 =

      IT_SORT                           = T_SORT[]

*   IT_FILTER                         =

*   IS_SEL_HIDE                       =

    I_DEFAULT                         = 'X'

    I_SAVE                            = G_SAVE

    IS_VARIANT                        = G_VARIANT

      IT_EVENTS                         = T_EVENTS[]

*   IT_EVENT_EXIT                     =

*   IS_PRINT                          =

*   IS_REPREP_ID                      =

*   I_SCREEN_START_COLUMN             = 0

*   I_SCREEN_START_LINE               = 0

*   I_SCREEN_END_COLUMN               = 0

*   I_SCREEN_END_LINE                 = 0

*   I_HTML_HEIGHT_TOP                 = 0

*   I_HTML_HEIGHT_END                 = 0

*   IT_ALV_GRAPHICS                   =

*   IT_HYPERLINK                      =

*   IT_ADD_FIELDCAT                   =

*   IT_EXCEPT_QINFO                   =

*   IR_SALV_FULLSCREEN_ADAPTER        =

* IMPORTING

*   E_EXIT_CAUSED_BY_CALLER           =

*   ES_EXIT_CAUSED_BY_USER            =

     TABLES

       T_OUTTAB                          = ITAB

* 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.                    " SUB_CALL_ALV

*&---------------------------------------------------------------------*

*&      Form  TOP_OF_PAGE

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM TOP_OF_PAGE .

   CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'

     EXPORTING

       IT_LIST_COMMENTARY = T_LIST.

*      i_logo             = 'ENJOYSAP_LOGO'.

ENDFORM.                    "top_of_page

*&---------------------------------------------------------------------*

*&      Form  USER_COMMAND

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM USER_COMMAND USING UCOMM    TYPE SY-UCOMM

                         SELFIELD TYPE SLIS_SELFIELD.

   DATA: L_VBELN(10) TYPE N.

   DATA : WA_TAB LIKE LINE OF ITAB.

   CASE UCOMM.

     WHEN '&IC1'.

       IF SELFIELD-SEL_TAB_FIELD EQ '1-VBELN'.

         L_VBELN = SELFIELD-VALUE.

         SET PARAMETER ID: 'AUN' FIELD L_VBELN.

         CALL TRANSACTION 'VA03' AND SKIP FIRST SCREEN.

       ELSE.

         MESSAGE 'SELECT FILE NUMBER' TYPE 'E'.

       ENDIF.

     WHEN OTHERS.

       MESSAGE 'PLEASE SELECT A VALID OPTION' TYPE 'E'.

   ENDCASE.

ENDFORM.                    "user_command

Read only

0 Likes
1,431

Hi Sanjeev,

Generally the ATNAM value is constant and ATINN value changes across systems i.e. Development, Quality and Production. So it is always advised to first get the ATINN (Internal Number of the characteristic) from CABN against the ATNAM and then use this ATINN in AUSP to get the ATWRT.

Coming to your code,

SELECT MARA~MATNR

            MARA~MTART

            MARA~SPART

            AUSP~ATINN

            AUSP~ATWRT

            AUSP~ATFLV

            FROM MARA JOIN AUSP ON AUSP~OBJEK EQ MARA~MATNR  INTO TABLE IT_MARA

            FOR ALL ENTRIES IN IT_MARD

            WHERE  MTART EQ 'Z003' AND

                   MARA~SPART IN S_SPART AND

                   MARA~LVORM EQ '' AND

                   MARA~MATNR EQ IT_MARD-MATNR.

-> Here you have fetched the characteristic numbers and values first and then hit CABN as,

   SELECT ATINN

            ATNAM

            FROM CABN CLIENT SPECIFIED INTO TABLE IT_CABN

            FOR ALL ENTRIES IN IT_mara

            WHERE MANDT EQ SY-MANDT

            AND   ATINN EQ IT_mara-ATINN.

My advise would be -

Since you know all the characteristics just put a select on CABN first and take all the ATINNs  against those ATNAMs. Then use these and put a select on AUSP. You can prepare an internal table with all the characteristics/ATNAMs and use it in the FOR ALL ENTRIES on CABN to get the Corresponding ATINNs. Now hit AUSP and get the values/ATWRT for every material for these Characteristics/ATINNs only.

Thanks,

Ankit.

Read only

0 Likes
1,431

Hi Ankit,

as you told i have created an internal table,and assigned each characterstics value,then i am fetching the data, but not getting the required value,just go through my full code, and tell me the changes which i have to make there.

(Through this i am getting other field values but not getting the value of ATINN56)

LOOP AT ITAB1.

         V_ATNAM = ITAB1-ATNAM.

         IF V_ATNAM EQ 'CATEGORY'.

           ITAB-ATINN01 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'TOWER'.

           ITAB-ATINN02 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'TYPE'.

           ITAB-ATINN03 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'FURNISHED'.

           ITAB-ATINN04 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'ACFITTED'.

           ITAB-ATINN05 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'POWERBACKUP'.

           ITAB-ATINN06 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'MODULARKITCHEN'.

           ITAB-ATINN07 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'STUDYROOM'.

           ITAB-ATINN12 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'STOREROOM'.

           ITAB-ATINN13 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'SERVENTROOM'.

           ITAB-ATINN14 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'FLAT_FLOOR'.

           ITAB-ATINN25 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'PHASE'.

           ITAB-ATINN29 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'BLOCK'.

           ITAB-ATINN30 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'SUPERAREA1'.

           ITAB-ATINN16 = ITAB1-ATWRT.

*******************************************************************************

           ELSEIF V_ATNAM EQ 'SUPERAREASQMT'.          

             if itab-atinn56 is initial.

             ITAB-ATINN56 = ITAB1-ATWRT.

             endif.

              ELSEIF V_ATNAM EQ 'SUPERAREASQMT'.

           CALL FUNCTION 'C14W_NUMBER_CHAR_CONVERSION'

            EXPORTING

              I_FLOAT              =  ITAB1-ATFLV

*       I_DEC                = 0

              I_DECIMALS           = 2

            IMPORTING

              E_STRING             = ITAB-ATINN56

*       E_FLOAT              =

*       E_DEC                =

*       E_DECIMALS           =

            EXCEPTIONS

              NUMBER_TOO_BIG       = 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.                                    

Read only

0 Likes
1,431

Hi Sanjeev,

SANJEEV KUMAR wrote:

Hi Ankit,

as you told i have created an internal table,and assigned each characterstics value,then i am fetching the data, but not getting the required value,just go through my full code, and tell me the changes which i have to make there.

(Through this i am getting other field values but not getting the value of ATINN56)

LOOP AT ITAB1.

         V_ATNAM = ITAB1-ATNAM.

         IF V_ATNAM EQ 'CATEGORY'.

           ITAB-ATINN01 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'TOWER'.

           ITAB-ATINN02 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'TYPE'.

           ITAB-ATINN03 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'FURNISHED'.

           ITAB-ATINN04 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'ACFITTED'.

           ITAB-ATINN05 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'POWERBACKUP'.

           ITAB-ATINN06 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'MODULARKITCHEN'.

           ITAB-ATINN07 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'STUDYROOM'.

           ITAB-ATINN12 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'STOREROOM'.

           ITAB-ATINN13 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'SERVENTROOM'.

           ITAB-ATINN14 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'FLAT_FLOOR'.

           ITAB-ATINN25 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'PHASE'.

           ITAB-ATINN29 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'BLOCK'.

           ITAB-ATINN30 = ITAB1-ATWRT.

         ELSEIF V_ATNAM EQ 'SUPERAREA1'.

           ITAB-ATINN16 = ITAB1-ATWRT.

*******************************************************************************

           ELSEIF V_ATNAM EQ 'SUPERAREASQMT'.          

             if itab-atinn56 is initial.                               -> Check this since you are looping into ITAB1, then what value does ITAB hold here.

             ITAB-ATINN56 = ITAB1-ATWRT.

             endif.

              ELSEIF V_ATNAM EQ 'SUPERAREASQMT'.

           CALL FUNCTION 'C14W_NUMBER_CHAR_CONVERSION'

            EXPORTING

              I_FLOAT              =  ITAB1-ATFLV

*       I_DEC                = 0

              I_DECIMALS           = 2

            IMPORTING

              E_STRING             = ITAB-ATINN56

*       E_FLOAT              =

*       E_DEC                =

*       E_DECIMALS           =

            EXCEPTIONS

              NUMBER_TOO_BIG       = 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.                                    

Regards,

Ankit.

Read only

0 Likes
1,431

Hi Ankit,

actually this program was written by previous ABAPER, and still i am not getting the point for looping into ITAB1,and then matching with ITAB,please go through the whole code and change according to your sujjestions.Because i gets confused in this whole code snippet.

Please do the needful.

Message was edited by: Matthew Billingham - removed bolding

Read only

0 Likes
1,431

Hi Sanjeev,

The entire code needs an overhaul and it would be tedious task so i would suggest you to either debug the code and understand the requirement or get some knowledge transferred from the original developer.

Eg:-I would never put a select on AUSP before hitting CABN, etc.

BR,

Ankit.