Tobias Hofmann

dez 13 2024

Adicionar dados a uma tabela personalizada é uma tarefa comum. Os dados devem ser transportados para a produção em vez de deixar o cliente inseri-los lá diretamente. Para o mundo “antigo” do SAP ERP, há a ferramenta de manutenção de tabelas. Esta ferramenta também está disponível no S/4HANA on premise/private cloud . No S/4HANA, também há um aplicativo Fiori disponível que permite manter dados comerciais. Esta abordagem é baseada no ABAP RESTful Application Programming Model . Ambos fazem o trabalho, mas quando há um aplicativo Fiori disponível, por que usar a alternativa SAP Gui? Nesta postagem, mostrarei como criar manutenção de tabelas para o SM30 e o aplicativo Business Configuration Maintenance.

Tabela de amostra

Para o exemplo, usarei uma tabela simples para armazenar dados de eventos. A tabela consiste apenas de alguns campos sem referência a outras tabelas.

O tipo de classe de entrega é C e a manutenção de tabela é permitida.

A localização do campo da tabela aponta para um domínio com valores predefinidos.

Para permitir que os consultores forneçam dados personalizados, pode ser usado o SAP Gui. Para isso, é criado um diálogo de manutenção de tabela.

O assistente pede algumas informações necessárias.

Os parâmetros são explicados na Ajuda do SAP:

Com um clique em criar, o diálogo é criado. Os objetos criados são listados no grupo de funções fornecido anteriormente (aqui: ZSM30_FUGR_LOC).

Para inserir os dados na tabela, o consultor chama a transação SM30 e insere o nome da tabela.

Dados personalizados podem ser inseridos, excluídos, alterados e posteriormente transportados para produção.

Observação: os valores possíveis para localização são retirados do domínio e exibidos como um menu suspenso.

S/4HANA: Manutenção de configuração de negócios

Manter dados de tabela personalizados também é possível no S/4HANA. Com o S/4HANA, você tem a opção de usar o aplicativo de configurações comerciais personalizadas (BCMA). Embora manter os dados via SM30 ainda funcione, quando você tem a opção de usar RAP e um aplicativo Fiori bacana para manter os dados, por que ainda usar SAP Gui? Vamos usar BCMA como o novo padrão preferencial.

A documentação sobre como usar o aplicativo e o que é necessário no lado do desenvolvedor está oculta na documentação de Ajuda do SAP para “ Criando aplicativos de configuração de negócios com o modelo de programação de aplicativo RESTful ABAP e o aplicativo de configurações de negócios personalizado” . Duas partes são necessárias para fazer a mágica funcionar: um objeto de manutenção de configuração de negócios (BCMO) e o aplicativo de manutenção de configuração de negócios. O primeiro é um objeto RAP criado em torno de sua tabela personalizada, o aplicativo é entregue pela SAP .

Boas notícias: o ADT vem com um assistente para criar o BCMO para sua tabela personalizada.

Requisitos

Um BCMO vem com alguns pré-requisitos :

  • Vinculação de serviço: OData V4 – UI
  • Entidade raiz CDS com rascunho
  • Estruturas de árvores suportadas
  • Apenas tabela dependente do cliente

O assistente ADT lista pré-requisitos adicionais como:

  • Campo-chave do cliente
  • Classe de entrega C
  • Permitir manutenção de dados
  • Campo de registro de data e hora: ABP_LASTCHANGE_TSTMPL

Os requisitos do assistente ADT referentes a ABP_LASTCHANGE_TSTMPL são opcionais. A tabela usada no exemplo anterior pode ser usada sem ajustes. No entanto, uma solução alternativa será usada. É melhor adicionar alguns campos de timestamp.

Objeto de Manutenção de Configuração de Negócios

Gere o objeto de manutenção de configuração de negócios. Selecione a tabela no ADT e abra o menu de contexto. Selecione Generate ABAP Repository Objects.

Selecione Objeto de Manutenção.

O assistente mostrará o que será criado e os nomes usados. Se quiser mudar alguma coisa aqui, faça agora.

As informações necessárias posteriormente para ativar o serviço são a vinculação do serviço.

Normalmente não há necessidade de mudar nada. Aceite os valores e esteja ciente de que vários objetos serão criados!

No ADT você pode ver que as pastas agora estão preenchidas com todos os objetos.

Nota: No ADT você pode ver que as pastas agora estão preenchidas com todos os objetos. Esses já são muitos objetos que são “apenas” necessários para fornecer dados para uma tabela. Se você fizer o mesmo para mais tabelas, obterá mais objetos. Adicionar os objetos RAP necessários para seus projetos principais pode ficar muito confuso. Você pode pensar em colocar seus objetos de manutenção de tabela em um pacote separado. Talvez até mesmo um pacote por tabela.

Ativação do serviço

O assistente cria tudo o que é necessário para expor o RAP BO como um serviço OData v4 UI. No entanto, ele não está expondo o serviço.

Isso deve ser feito manualmente. E não: não no ADT. Tentar publicar o serviço criado no ADT resulta em erro.

Efetue login no seu sistema S/4HANA via SAP Gui, execute a transação /n/IWFND/V4_ADMIN .

Selecione “Publicar grupos de serviços”

Informe o alias do sistema e o ID do grupo de serviços. No meu caso: ZUI_EVENTTABLERAP_O4

Carregue os grupos de serviço clicando em “Obter grupos de serviço”. Selecione o item e publique o grupo de serviço.

De volta ao ADT o serviço agora está publicado.

Um desses casos em que o I em ADT significa integrado.

Aplicativo de manutenção de configuração de negócios

As etapas acima configuraram o RAP BO para o BCMO e publicaram o serviço OData v4 UI. O aplicativo pode ser aberto, por exemplo, via visualização, mas isso não ajudará, pois não há opção de edição incluída.

Adicionar o BCMA ao FLP, conforme descrito na documentação do aplicativo, dá acesso ao bloco do aplicativo.

Abrir o aplicativo mostra uma entrada para a tabela de eventos.

Observação: o BMCA usa o idioma do usuário conectado no momento para carregar o nome e a descrição. Caso seu idioma seja DE, mas o BCMO tenha sido criado em EN: você não verá nada. Apenas uma linha vazia. O aplicativo não contém fallback para um idioma diferente. Caso você tenha, por exemplo, 30 BMCO em EN criados e seus consultores estejam conectados com DE: isso criará problemas. Mantenha esses idiomas ou garanta que eles correspondam.

Selecionar a entrada abre a página de detalhes da tabela. A entrada da tabela será listada. Como nada foi adicionado ainda, a tabela está vazia.

O BMCA oferece um botão de edição. Ativar o modo de edição permite adicionar dados.

A edição é feita usando rascunhos. Esse é um recurso interessante. Fazer upload em massa também é possível. Por exemplo, usando o Excel, os dados podem ser criados no Excel e colados da área de transferência para o aplicativo.

Copiar dados do Excel

Use a opção passado para inserir os valores.

Salve o rascunho, forneça um transporte e os dados serão persistidos.

No ADT, você pode visualizar os dados da tabela e validar se os dados foram gravados na tabela.

Conclusão

A manutenção de tabelas com dados personalizados funciona no S/4HANA usando a solução tradicional, mas também é possível usando RAP e um aplicativo. Como você pode ver no exemplo, a abordagem BCM ignora os valores fixos do local do valor do domínio. Não há menu suspenso ou ajuda de valor mostrada no aplicativo Fiori. Você também pode inserir quaisquer dados que desejar: não há validação de entrada em relação aos valores de domínio acontecendo. Se isso for necessário: você deve ajustar o objeto RAP. A governança é obrigatória para garantir que a abordagem BCMO funcione. Muitos objetos RAP são criados para uma tabela. Um conceito de pacote pode fornecer ajuda. Você tem que controlar o idioma do aplicativo e dos usuários ou fornecer uma tradução dos campos. Atualmente, a abordagem clássica funciona melhor. No entanto, a abordagem Fiori permite inserir dados sem usar o SAP Gui.

Deixe o mundo saber

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *