Application Development 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: 

Problem with decimal

Former Member
0 Kudos

Hi Experts,

I'm having a problem with decimal.

I have a alv data grid that can be edited.Once I press enter the value for the decimal fields are changed.

Example: If i input 5.00 in the field then I press enter it converts it to 0.05

And If I input 2.01 in the field it shows an error Too many decimal places(Maximum 0)

DATA INPUT for my internal table:

DATA: BEGIN OF it_data OCCURS 0,

   docno LIKE zit_haul_line-docno,

   line  LIKE zit_haul_line-line,

   eqpno LIKE zit_haul_line-eqpno,

   rpt LIKE zit_haul_line-rpt,

   notrip LIKE zit_haul_line-notrip,

   trc LIKE zit_haul_line-trc,

   escfee LIKE zit_haul_line-escfee,

   tollfee LIKE zit_haul_line-tollfee,

   repr LIKE zit_haul_line-repr,

   others LIKE zit_haul_line-others,

   tba LIKE zit_haul_line-tba,

   dik LIKE zit_haul_line-dik,

   locorg LIKE zit_haul_line-locorg,

   locdes LIKE zit_haul_line-locdes,

END OF it_data.

DATA: wa_data LIKE it_data.


Here is my code in change ALV Change.

FORM data_changed USING ir_data_changed TYPE REF TO cl_alv_changed_data_protocol.

   DATA ls_modi TYPE lvc_s_modi.

   DATA: ratepertrip LIKE zit_haul_line-rpt,

         nooftrip LIKE zit_haul_line-notrip,

         lv_value TYPE lvc_value ,

         totalrent LIKE zit_haul_line-trc,

         escortfee LIKE zit_haul_line-escfee,

         tollfee LIKE zit_haul_line-tollfee,

         represent LIKE zit_haul_line-repr,

         others LIKE zit_haul_line-others,

         lv_value1 TYPE lvc_value,

         totalbill LIKE zit_haul_line-tba.

   DATA: eqpno LIKE equi-equnr,

         gv_equnr LIKE equi-equnr.

* Check each modification:

   LOOP AT ir_data_changed->mt_mod_cells INTO ls_modi.

      CASE ls_modi-fieldname.

       WHEN 'EQPNO'.

         CONDENSE ls_modi-value.

         SELECT SINGLE equnr

           INTO gv_equnr

           FROM equi

           WHERE equnr EQ ls_modi-value.

         IF sy-subrc NE 0.

           CALL METHOD ir_data_changed->add_protocol_entry

             EXPORTING

               i_msgid     = '00'

               i_msgty     = 'E'

               i_msgno     = '398'

               i_msgv1     = 'Equipment Number does not exist:'

               i_msgv2     = ls_modi-value

               i_msgv3     = ''

               i_msgv4     = ''

               i_fieldname = ls_modi-fieldname

               i_row_id    = ls_modi-row_id.

         ENDIF.

     ENDCASE.

   CALL METHOD ir_data_changed->get_cell_value

     EXPORTING i_row_id = ls_modi-row_id

     i_fieldname = 'RPT'

     IMPORTING e_value = ratepertrip.

   CALL METHOD ir_data_changed->get_cell_value

     EXPORTING i_row_id = ls_modi-row_id

     i_fieldname = 'NOTRIP'

     IMPORTING e_value = nooftrip.

   CLEAR totalrent.

     ls_modi-fieldname = 'TRC'.

     IF ratepertrip = ''.

       ratepertrip = 1.

     ELSEIF nooftrip = ''.

       nooftrip = 1.

     ENDIF.

     totalrent = ratepertrip * nooftrip.

     CALL METHOD ir_data_changed->modify_cell

       EXPORTING i_row_id = ls_modi-row_id

       i_fieldname = ls_modi-fieldname

       i_value = totalrent.

   CALL METHOD ir_data_changed->get_cell_value

     EXPORTING i_row_id = ls_modi-row_id

     i_fieldname = 'ESCFEE'

     IMPORTING e_value = escortfee.

   CALL METHOD ir_data_changed->get_cell_value

     EXPORTING i_row_id = ls_modi-row_id

     i_fieldname = 'TOLLFEE'

     IMPORTING e_value = tollfee.

   CALL METHOD ir_data_changed->get_cell_value

     EXPORTING i_row_id = ls_modi-row_id

     i_fieldname = 'REPR'

     IMPORTING e_value = represent.

   CALL METHOD ir_data_changed->get_cell_value

     EXPORTING i_row_id = ls_modi-row_id

     i_fieldname = 'OTHERS'

     IMPORTING e_value = others.

   CLEAR totalbill.

     ls_modi-fieldname = 'TBA'.

     totalbill = escortfee + tollfee + represent + others.

     totalbill = totalrent + totalbill.

     CALL METHOD ir_data_changed->modify_cell

       EXPORTING i_row_id = ls_modi-row_id

       i_fieldname = ls_modi-fieldname

       i_value = totalbill.

   ENDLOOP.

ENDFORM.                    "data_changed

13 REPLIES 13

former_member202818
Active Contributor
0 Kudos

Hi Jepoy,

What is the unit for this field?

In field catalog for quantity field..

set wa_fcat-qfieldname = 'UNIT Field name'.

In field catalog for curencey field..

set wa_fcat-cfieldname = 'UNIT Field name'.

Regards

Sreekanth

0 Kudos

Hi Sreekanth,

Its Currency Length 22 Decimal 2

I've used LIKP as reference table and WAERK as Ref field.

0 Kudos

means, you have done this settings in field catalog?

like...

wa_fcat-fieldname = 'AMOUNT'

wa_fcat-reference_tab = 'LIKP'

wa_fcat-reference_field= 'WAERK'


Then its wrong.. what it will do is, the field 'AMOUNT' will be of type LIKP-WAERK

0 Kudos

Hi

I didn't do that settings with my field catalog.

Should I include that ?

0 Kudos

no

former_member202818
Active Contributor
0 Kudos

I have done a small test in my system. your problem is because of incorrect currency unit.

Please refer the snaps..

Before

Changing currency unit for amount field

After

0 Kudos

Hi

Thank you for your answer, But how can I change my currency type?

0 Kudos

have you checked your field catalog?

Try by setting this in field catalog

0 Kudos

normally what you have to do is..

suppose my internal table have two fields ...

amount

currency


Field catalog creation for field 'amount'..

wa_fcat-fieldname = 'AMOUNT'.

wa_fcat-Cfieldname = 'CURRENCY'.


Former Member
0 Kudos

Hi Jepoy,

Change the currency type in the declared structure of displayed ALV internal table. Avoid using LIKE use TYPE declaration. LIKE is obsolete .

Thanks.

former_member201275
Active Contributor
0 Kudos

There is a SAP demo program BCALV_TEST_FULLSCREEN_FCURR which has the code you are looking for.

Former Member
0 Kudos

Hi,

Can you check my code. I've tried changing the data types of my internal table and my output is stll same when I press enter.

The output should be 2.00 3.00 5.00 7.00

Also if I enter 12345.00 the output should be 12,345.00.

Thank you so much for the help.

* ALV required data objects.

TYPE-POOLS: sdydo, icon, slis.

DATA: w_title     TYPE lvc_title,

       w_repid     TYPE sy-repid,

       w_comm      TYPE slis_formname,

       w_status    TYPE slis_formname,

       x_layout    TYPE slis_layout_alv,

       ls_events   TYPE LINE OF slis_t_event,

       t_events    TYPE slis_t_event,

       t_fieldcat  TYPE slis_t_fieldcat_alv,

       x_sort      type LINE OF slis_t_sortinfo_alv,

       t_sort      TYPE slis_t_sortinfo_alv,

       ls_heading  TYPE slis_listheader,

       t_heading   TYPE slis_t_listheader,

       ls_fieldcat TYPE slis_fieldcat_alv,

       gs_variant  LIKE disvariant,

        gt_events            TYPE slis_t_event,

        gs_events            TYPE slis_alv_event.

DATA:

   wa_layout     TYPE slis_layout_alv,

   wa_events         TYPE slis_alv_event,

   wa_sort TYPE slis_sortinfo_alv.

TYPES: BEGIN OF t_header,

        line01(555) TYPE c,

        line02(555) TYPE c,

        END OF t_header.

DATA: is_print TYPE slis_print_alv,

       gset TYPE lvc_s_glay,

       %runmode TYPE aqlimode.

data: it_sortcat   type slis_sortinfo_alv occurs 1.

DATA: gw_header  TYPE t_header.

" END OF ALV DATA

"========================================================================================================================

DATA: BEGIN OF it_data OCCURS 0,

   docno LIKE zit_haul_line-docno,

   line  LIKE zit_haul_line-line,

   eqpno LIKE zit_haul_line-eqpno,

   rpt TYPE p DECIMALS 2"LIKE zit_haul_line-rpt,

   notrip TYPE p DECIMALS 2,

   trc TYPE p DECIMALS 2,

   escfee TYPE p DECIMALS 2,

   tollfee TYPE p DECIMALS 2,

   repr TYPE p DECIMALS 2,

   others TYPE p DECIMALS 2,

   tba TYPE p DECIMALS 2,

   dik LIKE zit_haul_line-dik,

   locorg LIKE zit_haul_line-locorg,

   locdes LIKE zit_haul_line-locdes,

END OF it_data.

DATA: wa_data LIKE it_data.

DATA: it_modified TYPE STANDARD TABLE OF zit_haul_line WITH HEADER LINE.

DATA: wa_modified TYPE STANDARD TABLE OF zit_haul_line WITH HEADER LINE.

SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME.

PARAMETERS: r_create RADIOBUTTON GROUP rad1  USER-COMMAND a DEFAULT 'X'.

   SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME.

   PARAMETERS: r_proj RADIOBUTTON GROUP rad2 MODIF ID A.

   PARAMETERS: r_cost RADIOBUTTON GROUP rad2 MODIF ID A.

   SELECTION-SCREEN END OF BLOCK b2.

PARAMETERS: r_post RADIOBUTTON GROUP rad1.

PARAMETERS: r_rev RADIOBUTTON GROUP rad1.

   SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME.

     PARAMETERS: p_docno LIKE mseg-belnr MODIF ID B,

                 p_post LIKE sy-datum MODIF ID B.

   SELECTION-SCREEN END OF BLOCK b3.

SELECTION-SCREEN BEGIN OF BLOCK b4 WITH FRAME.

PARAMETERS: p_trand LIKE sy-datum,

             p_cost LIKE csks-kostl,

             p_proj TYPE string,

             p_wbs TYPE string,

             p_nwa TYPE string.

SELECTION-SCREEN END OF BLOCK b4.

SELECTION-SCREEN END OF BLOCK b1.

AT SELECTION-SCREEN OUTPUT.

LOOP AT SCREEN.

   IF r_create = 'X'.

     IF screen-group1 = 'A'.

        screen-active = 1.

     ENDIF.

   ELSE.

     IF screen-group1 = 'A'.

        screen-active = 0.

     ENDIF.

   ENDIF.

   IF r_post = 'X' OR r_rev = 'X'.

     IF screen-group1 = 'B'.

        screen-active = 1.

     ENDIF.

   ELSE.

     IF screen-group1 = 'B'.

        screen-active = 0.

     ENDIF.

   ENDIF.

   MODIFY SCREEN.

ENDLOOP.

START-OF-SELECTION.

PERFORM get_data.

PERFORM display_report.

FORM get_data.

it_data-line = '001'.

APPEND it_data.

it_data-line = '002'.

APPEND it_data.

it_data-line = '003'.

APPEND it_data.

it_data-line = '004'.

APPEND it_data.

it_data-line = '005'.

APPEND it_data.

it_data-line = '006'.

APPEND it_data.

it_data-line = '007'.

APPEND it_data.

it_data-line = '008'.

APPEND it_data.

it_data-line = '009'.

APPEND it_data.

it_data-line = '010'.

APPEND it_data.

ENDFORM.

"ALV DISPLAY ====================================================================================================================================

"&---------------------------------------------------------------------*

"&      Form  PF_WRITE_FIELDCAT

"&---------------------------------------------------------------------*

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

*&      Form  pf_write_fieldcat

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

*       text

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

*      -->FNAME      text

*      -->TNAME      text

*      -->TEXT       text

*      -->LEN        text

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

FORM pf_write_fieldcat  USING fname

                               tname

                               text

                               len

                               edt.

*                              key

*                              sum.

   ls_fieldcat-fieldname     = fname.

   ls_fieldcat-tabname       = tname.

   ls_fieldcat-seltext_l     = text.

   ls_fieldcat-outputlen     = len.

*  ls_fieldcat-key           = key.

*  ls_fieldcat-do_sum        = sum.

   ls_fieldcat-edit = edt.

   IF len = '0'.

     ls_fieldcat-outputlen     = '1'.

     ls_fieldcat-no_out = 'X'.

   ENDIF.

   APPEND ls_fieldcat TO t_fieldcat.

   CLEAR ls_fieldcat.

*  To set ENTER Event!

   gs_events-name = 'CALLER_EXIT'.

   gs_events-form = 'CALLER_EXIT'.

   APPEND gs_events TO gt_events.

*   To change the ALV Changed Protocoll

   gs_events-name = 'DATA_CHANGED'.

   gs_events-form = 'DATA_CHANGED'.

   APPEND gs_events TO gt_events.

ENDFORM.                    " PF_WRITE_FIELDCAT

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

*&      Form  display_report

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

FORM display_report.

   is_print-no_print_selinfos = 'X'.

   is_print-no_print_listinfos = 'X'.

   is_print-print_ctrl = 'X'.

   PERFORM pf_write_fieldcat USING:

*  'DOCNO'                  'IT_DATA'  'Line'                   ' ' '',

   'LINE'                  'IT_DATA'  'Line'                   ' ' '',

   'EQPNO'                 'IT_DATA'  'Equipment No.'          ' ' 'X',

   'RPT'           'IT_DATA'  'Rate per Trip'          ' ' 'X',

   'NOTRIP'              'IT_DATA'  'No of Trip'             ' ' 'X',

   'TRC'             'IT_DATA'  'Total Rental Charges'   ' ' '',

   'ESCFEE'             'IT_DATA'  'Escort Fee'             ' ' 'X',

   'TOLLFEE'               'IT_DATA'  'Toll Fee'               ' ' 'X',

   'REPR'             'IT_DATA'  'Representation'         ' ' 'X',

   'OTHERS'                'IT_DATA'  'Others'                 ' ' 'X',

   'TBA'               'IT_DATA'  'Total Billable Amount'  ' ' '',

   'DIK'              'IT_DATA'  'Distance in KM'         ' ' 'X',

   'LOCORG'             'IT_DATA'  'Location Origin'        ' ' 'X',

   'LOCDES'             'IT_DATA'  'Location Destination'   ' ' 'X'.

* Layout

   x_layout-zebra = 'X'.

   x_layout-no_keyfix = ' '.

   x_layout-colwidth_optimize = 'X'.

* GUI Status

   w_status = 'SET_PF_STATUS'.

   w_repid = sy-repid.

* User commands

   w_comm = 'USER_COMMAND'.

*  gs_variant-variant = p_var1.

*  gs_variant-handle  = space.

*  gs_variant-report  = sy-repid.

   gs_variant-report  = sy-repid.

   gs_variant-username = sy-uname.

   gset-no_colwopt = 'X'.

* Displays the ALV grid

   CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

     EXPORTING

       i_callback_program = sy-repid

       it_fieldcat        = t_fieldcat

       is_layout          = x_layout

       "it_sort            = t_sort

       it_sort                 = it_sortcat

*      i_callback_pf_status_set = w_status

       "i_callback_user_command  = w_comm

       I_CALLBACK_USER_COMMAND = 'USER_COMMAND'

*      i_callback_html_top_of_page  = 'TOP_OF_PAGE'

       i_callback_top_of_page  = 'TOP-OF-PAGE'

*      i_callback_html_end_of_list = 'END-OF-PAGE'

       is_variant         = gs_variant

       i_save             = 'A'

       is_print           = is_print

       it_events          = gt_events

*      i_grid_title       = w_title

     TABLES

       t_outtab           = IT_DATA

     EXCEPTIONS

       program_error      = 1

       OTHERS             = 2.

ENDFORM.                    " display_report

FORM data_changed USING ir_data_changed TYPE REF TO cl_alv_changed_data_protocol.

   DATA ls_modi TYPE lvc_s_modi.

   DATA: ratepertrip LIKE zit_haul_line-rpt,

         nooftrip LIKE zit_haul_line-notrip,

         lv_value TYPE lvc_value ,

         totalrent LIKE zit_haul_line-trc,

         escortfee LIKE zit_haul_line-escfee,

         tollfee LIKE zit_haul_line-tollfee,

         represent LIKE zit_haul_line-repr,

         others LIKE zit_haul_line-others,

         lv_value1 TYPE lvc_value,

         totalbill LIKE zit_haul_line-tba.

   DATA: eqpno LIKE equi-equnr,

         gv_equnr LIKE equi-equnr.

* Check each modification:

   LOOP AT ir_data_changed->mt_mod_cells INTO ls_modi.

      CASE ls_modi-fieldname.

       WHEN 'EQPNO'.

         CONDENSE ls_modi-value.

         SELECT SINGLE equnr

           INTO gv_equnr

           FROM equi

           WHERE equnr EQ ls_modi-value.

         IF sy-subrc NE 0.

           CALL METHOD ir_data_changed->add_protocol_entry

             EXPORTING

               i_msgid     = '00'

               i_msgty     = 'E'

               i_msgno     = '398'

               i_msgv1     = 'Equipment Number does not exist:'

               i_msgv2     = ls_modi-value

               i_msgv3     = ''

               i_msgv4     = ''

               i_fieldname = ls_modi-fieldname

               i_row_id    = ls_modi-row_id.

         ENDIF.

     ENDCASE.

   CALL METHOD ir_data_changed->get_cell_value

     EXPORTING i_row_id = ls_modi-row_id

     i_fieldname = 'RPT'

     IMPORTING e_value = ratepertrip.

   CALL METHOD ir_data_changed->get_cell_value

     EXPORTING i_row_id = ls_modi-row_id

     i_fieldname = 'NOTRIP'

     IMPORTING e_value = nooftrip.

   CLEAR totalrent.

     ls_modi-fieldname = 'TRC'.

     IF ratepertrip = ''.

       ratepertrip = 1.

     ELSEIF nooftrip = ''.

       nooftrip = 1.

     ENDIF.

     totalrent = ratepertrip * nooftrip.

     CALL METHOD ir_data_changed->modify_cell

       EXPORTING i_row_id = ls_modi-row_id

       i_fieldname = ls_modi-fieldname

       i_value = totalrent.

   CALL METHOD ir_data_changed->get_cell_value

     EXPORTING i_row_id = ls_modi-row_id

     i_fieldname = 'ESCFEE'

     IMPORTING e_value = escortfee.

   CALL METHOD ir_data_changed->get_cell_value

     EXPORTING i_row_id = ls_modi-row_id

     i_fieldname = 'TOLLFEE'

     IMPORTING e_value = tollfee.

   CALL METHOD ir_data_changed->get_cell_value

     EXPORTING i_row_id = ls_modi-row_id

     i_fieldname = 'REPR'

     IMPORTING e_value = represent.

   CALL METHOD ir_data_changed->get_cell_value

     EXPORTING i_row_id = ls_modi-row_id

     i_fieldname = 'OTHERS'

     IMPORTING e_value = others.

   CLEAR totalbill.

     ls_modi-fieldname = 'TBA'.

     totalbill = escortfee + tollfee + represent + others.

     totalbill = totalrent + totalbill.

     CALL METHOD ir_data_changed->modify_cell

       EXPORTING i_row_id = ls_modi-row_id

       i_fieldname = ls_modi-fieldname

       i_value = totalbill.

   ENDLOOP.

ENDFORM.                    "data_changed

FORM caller_exit USING is_data TYPE slis_data_caller_exit.

* Switch to OO_ALV:

   DATA: lr_alv TYPE REF TO cl_gui_alv_grid.

   CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'

     IMPORTING

       e_grid = lr_alv.

* Register ENTER as edit event:

   CALL METHOD lr_alv->register_edit_event

     EXPORTING

       i_event_id = cl_gui_alv_grid=>mc_evt_enter.

* pls. use MC_EVT_MODIFIED if leaving the cell should trigger the edit event!

ENDFORM. "CALLER_EXIT

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

*&      Form  TOP-OF-PAGE

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

*       text

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

FORM top-of-page.

*ALV Header declarations

   DATA: t_header TYPE slis_t_listheader,

         wa_header TYPE slis_listheader,

         t_line LIKE wa_header-info,

         ld_lines TYPE i,

         ld_linesc(10) TYPE c.

   DATA: text TYPE sdydo_text_element,

         a_right   TYPE REF TO cl_dd_area.

   DATA: tran TYPE string,

         send TYPE string,

         wbs TYPE string,

         nwa TYPE string.

   text = 'Create Hauling Charges for Project'.

   wa_header-typ  = 'S'.

   wa_header-info = text.

   APPEND wa_header TO t_header.

   CLEAR: wa_header.

   gw_header-line01 = text.

   CONCATENATE 'Transaction Date: ' p_trand INTO tran SEPARATED BY space.

   text = tran.

   wa_header-typ  = 'S'.

   wa_header-info = text.

   APPEND wa_header TO t_header.

   CLEAR: wa_header.

   gw_header-line01 = text.

   CONCATENATE 'Sender Cost Center: ' p_cost INTO send SEPARATED BY space.

   text = send.

   wa_header-typ  = 'S'.

   wa_header-info = text.

   APPEND wa_header TO t_header.

   CLEAR: wa_header.

   gw_header-line01 = text.

   CONCATENATE 'Receiver WBS: ' p_wbs INTO wbs SEPARATED BY space.

   text = wbs.

   wa_header-typ  = 'S'.

   wa_header-info = text.

   APPEND wa_header TO t_header.

   CLEAR: wa_header.

   gw_header-line01 = text.

   CONCATENATE 'Receiver Network and NWA: ' p_nwa INTO nwa SEPARATED BY space.

   text = nwa.

   wa_header-typ  = 'S'.

   wa_header-info = text.

   APPEND wa_header TO t_header.

   CLEAR: wa_header.

   gw_header-line01 = text.

   CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'

     EXPORTING

       it_list_commentary = t_header.

ENDFORM.                    "top-of-page

FORM pf_set_top_page_heading  USING typ

                                     key

                                     info.

   ls_heading-typ = typ.

   ls_heading-key = key.

   ls_heading-info = info.

   APPEND ls_heading TO t_heading.

ENDFORM.                    " PF_SET_TOP_PAGE_HEADING

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

*&      Form  PF_SET_TOP_PAGE_EVENTS

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

FORM pf_set_top_page_events  USING name

                                    form.

   ls_events-name = name.

   ls_events-form = form.

   APPEND ls_events TO t_events.

   CLEAR ls_events.

ENDFORM.                    " PF_SET_TOP_PAGE_EVENTS

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

*&      Form  REUSE_ALV_GET_VARIANT

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

FORM reuse_alv_get_variant

   USING    value(iv_repid)   TYPE  sy-repid

            value(iv_handleTYPE  slis_handl

   CHANGING iv_variant        TYPE  disvariant-variant.

   DATA: lv_exit(1) TYPE c,

         ls_variant TYPE disvariant.   " Structure for Variant

   MOVE: iv_variant TO ls_variant-variant,

         iv_handle  TO ls_variant-handle,

         iv_repid   TO ls_variant-report.

   CALL FUNCTION 'REUSE_ALV_VARIANT_F4'

     EXPORTING

       is_variant    = ls_variant

       i_save        = 'A'

     IMPORTING

       e_exit        = lv_exit

       es_variant    = ls_variant

     EXCEPTIONS

       not_found     = 1

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

   IF lv_exit = space.

     MOVE ls_variant-variant TO iv_variant.

   ENDIF.

ENDFORM.                    " REUSE_ALV_GET_VARIANT                 "

FORM user_command USING w_ucomm LIKE sy-ucomm

rs_selfield TYPE slis_selfield.

CASE w_ucomm.

WHEN '&DATA_SAVE'.

*  READ TABLE it_data INTO wa_data." INDEX rs_selfield-tabindex.

   DELETE it_data WHERE eqpno IS INITIAL.

   LOOP AT it_data INTO wa_data.

     CONDENSE wa_data-eqpno.

     MOVE-CORRESPONDING wa_data TO wa_modified.

     APPEND wa_modified TO it_modified.

   ENDLOOP.

   MODIFY zit_haul_line FROM TABLE it_modified.

ENDCASE.

ENDFORM. "user_command

former_member289261
Active Contributor
0 Kudos

Hi,

You need to provide reference table and reference field in field catalog.

Reference table can be : LIKP          or T001

Reference field can be : WAERK      or WAERS

But using it will have effect on your column heading if you are displaying heading using fields SCRLTXT_L , M, or S.

So, for heading use field COLTEXT of the fieldcatalog if you need to provide your own text for column heading.

Regards,

Ashish