Percursos
/
ABAP
ABAP
/
Exercícios
/
Agregação de ITAB
Agregação de ITAB

Agregação de ITAB

Fácil

Instruções

Aprende a agregar e agrupar dados numa tabela interna ABAP.

A tua classe vai receber uma tabela interna chamada initial_numbers. Tem duas colunas: GROUP e NUMBER.

TYPES: BEGIN OF initial_numbers_type,
        group  TYPE group,
        number TYPE i,
       END OF initial_numbers_type,
       initial_numbers TYPE STANDARD TABLE OF initial_numbers_type WITH EMPTY KEY.

Os dados desta tabela são constituídos por três grupos: A, B e C. Existem vários registos em cada grupo.

GROUP NUMBER
A 10
B 5
A 6
C 22
A 13
C 500

O teu trabalho é devolver uma tabela interna com um registo por grupo. Este registo deve conter o número de registos da tabela original por grupo (COUNT), a soma de todos os valores de NUMBER neste grupo (SUM), o valor mínimo do grupo (MIN), o valor máximo do grupo (MAX) e a média de todos os valores desse grupo (AVERAGE).

A tabela de retorno esperada tem a seguinte definição:

TYPES: BEGIN OF aggregated_data_type,
        group   TYPE group,
        count   TYPE i,
        sum     TYPE i,
        min     TYPE i,
        max     TYPE i,
        average TYPE f,
       END OF aggregated_data_type,
       aggregated_data TYPE STANDARD TABLE OF aggregated_data_Type WITH EMPTY KEY.

Bónus

Há muitas formas de realizar esta tarefa em ABAP. Com que eficiência consegues completar a tarefa? Consegues fazê-lo lendo cada registo da tabela apenas uma vez?

Editar via GitHub A ligação abre numa nova janela ou separador
ABAP Exercism

Estás pronto para começar Agregação de ITAB?

Inscreve-te no Exercism para aprenderes e dominares ABAP com 54 exercícios, e mentoria humana real, tudo grátis.