Pular para o conteúdo
Moovi — página inicial
SAP → ABAP

Entendendo o EML

Por Gabriel Dias3 min de leitura

Entendendo o EML

Introdução

No contexto do ABAP RAP (RESTful Application Programming Model), o EML (Entity Manipulation Language) é a linguagem que você usa para interagir com as entidades definidas no RAP.

Pense nele como uma evolução dos comandos tradicionais de ABAP para manutenção de dados. Com o EML, você consegue realizar operações como CREATE, READ, UPDATE e DELETE diretamente nas entidades do RAP.

É uma ferramenta poderosa que simplifica a manipulação de dados em aplicações modernas e se integra perfeitamente com o modelo de programação do ABAP RAP.

Neste artigo, vamos explorar como usar o EML na prática e entender por que ele é o caminho ideal comparado aos comandos do ABAP Clássico.

Conceitos Básicos do EML

No ABAP RAP, as entidades representam suas estruturas de dados e regras de negócio. O EML permite interagir com essas entidades através de comandos padronizados.

As operações básicas incluem:

  • CREATE ENTITY: Criar novas entradas em uma entidade.
  • READ ENTITY: Ler dados de uma entidade.
  • UPDATE ENTITY: Atualizar entradas existentes.
  • DELETE ENTITY: Excluir entradas.

Esses comandos do EML trabalham em conjunto com as interfaces de serviço definidas no RAP. Elas são configuradas no CDS (Core Data Services) e expostas como APIs ou camadas de serviço para interação segura e estruturada.

Utilizando o EML no ABAP RAP

Vamos a um exemplo prático de como usar o EML para manipular uma entidade no RAP. Suponha que temos uma entidade chamada ZI_FAQ.

1. Comando CREATE ENTITY

Para criar novos registros, utilizamos o comando CREATE ENTITY:

" Criar
DATA lt_new_faq TYPE TABLE FOR CREATE zi_faq.
 
APPEND VALUE #( %cid = 'cid1' Title = 'Manualmente' ) TO lt_new_faq.
 
MODIFY ENTITIES OF zi_faq
    ENTITY zi_faq
    CREATE
    FIELDS ( title )
    WITH lt_new_faq
    MAPPED   DATA(mapped)
    FAILED   DATA(failed)
    REPORTED DATA(reported).
 
COMMIT ENTITIES.

2. Comando READ ENTITY

Para ler dados de uma entidade, usamos o READ ENTITY. Veja como ler um registro específico:

" Lendo 1 Registro
READ ENTITIES OF zi_faq
    ENTITY zi_faq
    ALL FIELDS
    WITH VALUE #( ( id = 'A5DFDCDBFA321EEEBDFF7110DCCF9C8A' ) )
    RESULT DATA(faqs)
    FAILED DATA(failed)
    REPORTED DATA(reported).

E se você precisar ler múltiplos registros de uma vez? É simples:

" Lendo Multiplos
DATA keys TYPE TABLE FOR READ IMPORT zi_faq.
 
keys = VALUE #( ( id = 'A5DFDCDBFA321EEEBDE4A606E0A9F5C1' )
                ( id = 'A5DFDCDBFA321EEEBDEA66095C148522' ) ).
 
READ ENTITIES OF zi_faq
    ENTITY zi_faq
    ALL FIELDS
    WITH CORRESPONDING #( keys )
    RESULT DATA(faqs)
    FAILED DATA(failed)
    REPORTED DATA(reported).

3. Comando UPDATE ENTITY

Para atualizar registros existentes, o comando UPDATE ENTITY é o caminho. Veja o exemplo:

MODIFY ENTITIES OF zi_faq
    ENTITY zi_faq
    UPDATE
    FIELDS ( title )
    WITH VALUE #( ( id = 'A5DFDCDBFA321EDEBDE76397F7FE8AFC'
                    title = 'Olá Mundo!'
                    %control-title = if_abap_behv=>mk-on ) ).
 
COMMIT ENTITIES.

Conclusão

O EML é uma ferramenta essencial para quem deseja desenvolver aplicações modernas no ABAP RAP. Ele simplifica a manipulação de dados, promove boas práticas ao centralizar regras de negócio e facilita o controle de acesso.

Embora o ABAP Clássico ainda seja amplamente usado, o RAP e o EML representam o futuro do desenvolvimento na SAP.

Ao dominar o EML, você se prepara para criar soluções escaláveis, seguras e totalmente alinhadas com as novas tendências do ecossistema SAP.

Todos os artigos

Aprenda na prática

Do artigo ao projeto entregue

Os cursos da Moovi têm ambiente SAP de prática e acompanham você do primeiro passo à especialização.

Conhecer os cursos
Fale no WhatsApp