Skip to content

Structure Container: Fix display of numeric values #40

@NeumannJoerg

Description

@NeumannJoerg

Describe the bug
The structure container /USI/CL_BAL_DC_STRUCTURE is displaying the structure as a list of name-value-pairs. The value field is of type CHAR255. When the value of a numeric field is written to a character field, the content will be right-justified.

The problem: The ALV grid used to display the list of name-value-pairs does not display the full 255 characters, so that the field looks empty when displaying the container in SLG1.

To Reproduce

  1. Run this test report.
DATA: BEGIN OF structure,
        number TYPE int1 VALUE 1,
      END   OF structure.

DATA(logger) = /usi/cl_bal_factory=>get_instance( )->get_existing_logger( ).
DATA(token) = logger->claim_ownership( ).

logger->add_free_text(
    i_problem_class = /usi/cl_bal_enum_problem_class=>other
    i_message_type  = /usi/cl_bal_enum_message_type=>information
    i_free_text     = 'Just a test'
    i_details       = NEW /usi/cl_bal_dc_collection( )->insert(
                              i_data_container = NEW /usi/cl_bal_dc_structure(
                                  i_structure = structure ) ) ).

logger->save( token ).
logger->free( token ).
  1. Check the rendered container in SLG1 - field NUMBER will look like it is empty
  2. Checking I_SERIALIZED_DATA_CONTAINER in method /USI/IF_BAL_DATA_CONTAINER~DESERIALIZE clearly shows, that the number became a part of the persisted XML-data. So the data has been saved - it is just not displayed in SLG1.

Expected behavior
The orientation of numeric fields should be left-justified. Additionally the length of the value field should be limited to 128 characters, since this is the maximum supported by the ALV grid control.

Apart from that enabling grid functions like sorting and filtering would be helpful for huge structures.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions