SAP Tutorial de IDOC em ABAP: Guia passo a passo

โšก Resumo Inteligente

SAP IDoc (Documento Intermediรกrio) รฉ um contรชiner de dados padronizado que transfere informaรงรตes comerciais entre SAP e nรฃo-SAP Este tutorial explica a definiรงรฃo, estrutura, tipos, tabelas, perfis de parceiros, portas e os processos de entrada e saรญda de ponta a ponta, utilizando ALE e EDI.

  • ???? Definiรงรฃo Essencial: IDoc รฉ um contรชiner de dados independente de sistema, baseado em padrรตes EDI como ANSI ASC X12 e EDIFACT.
  • ๐Ÿงฑ Estrutura em trรชs partes: Cada IDoc consiste em um Registro de Controle, Registros de Dados e Registros de Status, cada um armazenado em tabelas de banco de dados dedicadas.
  • ๐Ÿ†š Hierarquia de tipos: Os tipos de IDoc bรกsicos sรฃo fornecidos com SAP e nรฃo podem ser modificados; os Tipos de Extensรฃo adicionam campos personalizados quando necessรกrio.
  • ๐Ÿ” Fluxogramas de Processo: O mรณdulo de saรญda cria e envia IDocs; o mรณdulo de entrada os recebe e os publica por meio de mรณdulos de funรงรฃo vinculados.
  • ๐Ÿค– Habilitaรงรฃo de IA: Ferramentas de monitoramento baseadas em IA detectam falhas de IDoc precocemente e mapeiam automaticamente os campos em todo o sistema. SAP e nรฃo-SAP parceiros.

SAP Tutorial IDOC

O que รฉ um IDoc?

IDoc รฉ simplesmente um contรชiner de dados usado para trocar informaรงรตes entre quaisquer dois processos que possam compreender a sintaxe e a semรขntica dos dados.

Em outras palavras, um IDoc รฉ como um arquivo de dados com um formato especรญfico, que รฉ trocado entre dois sistemas que sabem como interpretar esses dados.

IDoc significa โ€œDocumento intermediรกrio".

Ao executar um saรญda No processo ALE ou EDI, um IDoc รฉ criado. SAP SystemOs IDocs sรฃo armazenados no banco de dados e cada IDoc possui um nรบmero รบnico dentro de um cliente.

Caracterรญsticas principais

  • IDocs sรฃo independente dos sistemas de envio e recebimento (SAP-A-SAP bem como nรฃo-SAP).
  • Os IDocs sรฃo baseados em EDI Os padrรตes utilizados sรฃo ANSI ASC X12 e EDIFACT. Em caso de conflito no tamanho dos dados, o IDoc adota aquele com maior comprimento.
  • IDocs sรฃo independente da direรงรฃo da troca de dadosPor exemplo, o formulรกrio ORDERS01 no mรณdulo de Compras suporta tanto entradas quanto saรญdas.
  • Os IDocs podem ser visualizados em um editor de texto Porque os dados sรฃo armazenados em formato de caractere em vez de formato binรกrio.

Estrutura de um IDoc

Estrutura de um IDoc

A estrutura do IDoc consiste em trรชs partes:

  1. A parte administrativa (Registro de Controle) โ€” Contรฉm o tipo de IDoc, o tipo de mensagem, o status atual, o remetente, o destinatรกrio e metadados semelhantes. Isso รฉ chamado de Registro de Controle.
  2. Os dados da aplicaรงรฃo (Registro de Dados) โ€” contรฉm os dados comerciais. Estes sรฃo chamados de registros de dados ou segmentos.
  3. As informaรงรตes de status (Registro de Status) โ€” fornece informaรงรตes sobre os vรกrios estรกgios pelos quais o IDoc passou.

Vocรช pode visualizar um IDoc usando uma transaรงรฃo. WE02 or WE05.

Registro IDoc mostrando Controle, Dados e Status.

Como pode ser visto na captura de tela acima, o registro IDoc possui trรชs partes: Controle, Dados e Status. Cada parte รฉ explorada em detalhes abaixo.

Registro de controle

  • Todos os dados do Registro de Controle sรฃo armazenados no EDIDC tabela. A chave desta tabela รฉ o nรบmero IDoc.
  • Contรฉm informaรงรตes como nรบmero IDoc, direรงรฃo (entrada/saรญda), remetente, informaรงรตes do destinatรกrio, canal em uso e porta em uso.
  • A direรงรฃo โ€œ1โ€ indica saรญda e โ€œ2โ€ indica entrada.

Registro de Dados

  • O registro de dados contรฉm dados do aplicativo, como informaรงรตes de cabeรงalho do funcionรกrio, detalhes semanais, detalhes do cliente e assim por diante.
  • Todos os dados dos registros sรฃo armazenados em tabelas. EDID2 a EDID4 e EDIDD ร‰ uma estrutura onde vocรช pode ver seus componentes.
  • Contรฉm dados como o nรบmero do IDoc, o nome e o nรบmero do segmento no IDoc, a hierarquia e os prรณprios dados.
  • A carga รบtil real รฉ armazenada como uma string em um campo chamado SDADOS, que รฉ um campo de 1000 caracteres.

Registro de status

  • Um registro de status รฉ anexado a um IDoc em cada etapa importante ou quando ocorre um erro.
  • Todos os dados do Registro de Status sรฃo armazenados no EDIDS tabela.
  • Os status 1 a 42 sรฃo para envios de saรญda, enquanto os status 50 a 75 sรฃo para envios de entrada.

Tipos de IDoc

Um Tipo IDoc (Bรกsico) define a estrutura e o formato do documento comercial a ser trocado. Um IDoc รฉ uma instรขncia de um tipo de IDoc.Assim como o conceito de variรกveis โ€‹โ€‹e tipos de variรกveis โ€‹โ€‹em linguagens de programaรงรฃoOs tipos de IDoc podem ser definidos usando transaรงรตes. WE30.

O que รฉ um Segmento?

Um segmento define o formato e a estrutura de um Registro de Dados Em um IDoc. Os segmentos sรฃo componentes reutilizรกveis.

Para cada segmento, SAP Cria os seguintes componentes.

  • Tipo de segmento (independente da versรฃo)
  • Definiรงรฃo de segmento (depende da versรฃo)
  • Documentaรงรฃo do segmento

Os trรชs รบltimos caracteres representam a versรฃo do segmento. As definiรงรตes podem mudar conforme a versรฃo muda, mas o Tipo de Segmento permanece o mesmo. Transaรงรฃo: WE31.

Segmento em IDoc

O que รฉ um tipo de IDoc de extensรฃo?

Um IDoc รฉ de dois tipos:

  1. Bรกsico
  2. Extensรฃo

Tipos de IDoc bรกsicos e de extensรฃo

SAP fornece muitos tipos de IDoc bรกsicos predefinidos que nรฃo pode ser modificadoSe precisar adicionar mais dados a um Tipo Bรกsico restrito, vocรช pode usar um Tipo de Extensรฃo. Na maioria das vezes, vocรช irรก... nรฃo Preciso de extensรตes.

Ilustraรงรฃo do tipo IDoc de extensรฃo

Documentaรงรฃo

Cada IDoc รฉ minuciosamente documentado na transaรงรฃo. WE60.

Documentaรงรฃo IDoc no WE60

Tipo de mensagem

Uma mensagem representa um tipo especรญfico de documento que รฉ transmitrelaรงรตes entre duas partes, por exemplo, Pedidos, Respostas a Pedidos e Faturas.

Um tipo de IDoc pode ser associado a vรกrios tipos de mensagem. Por outro lado, um tipo de mensagem pode ser associado a diferentes tipos de IDoc. Transaรงรฃo: WE81.

Tipo de mensagem no IDoc

Visualizaรงรตes de IDoc

Um tipo de IDoc pode ser usado para mais de um tipo de mensagem, o que resulta em IDocs contendo mais campos do que o necessรกrio para um determinado tipo de mensagem.

As IDoc Views melhoram o desempenho na geraรงรฃo de IDocs, garantindo que apenas os segmentos relevantes sejam preenchidos com dados. As IDoc Views sรฃo importantes apenas para o processamento de saรญda.

Visualizaรงรตes de IDoc

Perfis de parceiros

Um parceiro รฉ um sรณcio comercial com quem vocรช realiza negรณcios e troca documentos.

No perfil do parceiro com quem os IDocs sรฃo trocados, vocรช mantรฉm os parรขmetros necessรกrios para a troca de dados. A transaรงรฃo utilizada รฉ WE20.

Perfis de parceiros no IDoc

Porta

O Porto define as caracterรญsticas tรฉcnicas da conexรฃo entre o seu SAP O parรขmetro `port` define o meio pelo qual os dados sรฃo trocados entre os dois sistemas.

Existem diferentes tipos de portas. As duas mais comuns sรฃo Portas TRFC usado em ALE e Portas de arquivo usado pelo EDI.

Para portas TRFC, vocรช precisa fornecer o nome do destino lรณgico criado usando SM59Ao usar uma porta de arquivo, vocรช pode especificar o diretรณrio onde o arquivo IDoc deve ser colocado. O outro sistema ou middleware entรฃo busca o arquivo a partir desse diretรณrio. Um mรณdulo de funรงรฃo pode ser usado para gerar um nome de arquivo para o IDoc. ensaioVocรช pode usar โ€œArquivo de saรญdaโ€ para especificar um nome de arquivo constante. A guia โ€œgatilho de saรญdaO parรขmetro โ€œโ€ pode ser usado para fornecer informaรงรตes caso vocรช queira acionar algum processamento no subsistema quando um IDoc for criado neste local. Especifique o nome do arquivo de comando e o diretรณrio onde ele deve ser executado.

Porta em IDoc

Transaรงรฃo IDoc comum Codes

transaรงรฃo Code Propรณsito
WE02 / WE05 Exibir e monitorar IDocs
WE30 Criar ou alterar o tipo de IDoc
WE31 Criar ou alterar Segmento
WE20 Manter o perfil do parceiro
WE21 Manutenรงรฃo dos portos
WE42 Defina o processo de entrada. Code
WE57 Alocar mรณdulo de funรงรฃo de entrada ao tipo de mensagem
WE60 Documentaรงรฃo IDoc
WE81 / WE82 Criar tipo de mensagem / associar ao tipo de IDoc
BD51 Defina as caracterรญsticas do mรณdulo de funรงรฃo.
SM59 Manter destinos RFC

Processo IDoc: um exemplo do mundo real

Considere o exemplo de envio de uma Ordem de Compra a um fornecedor atravรฉs do IDoc.

  • Sempre que uma Ordem de Compra (OC) รฉ criada, o sistema precisa enviar um IDoc ao fornecedor.
  • O pedido de compra รฉ enviado ao fornecedor (parceiro) na forma de um IDoc. Esse parceiro precisa estar habilitado para EDI no sistema. SAP reconhece que pode enviar o documento a este fornecedor eletronicamente.
  • O pedido de compra enviado pelo cliente como um IDoc de saรญda torna-se um IDoc de entrada para o fornecedor. SAP O sistema do fornecedor pode processar isso para criar um documento de aplicaรงรฃo (um Pedido de Vendas) em seu sistema.
  • Cotaรงรตes, solicitaรงรตes de cotaรงรฃo (RFQs), pedidos de compra (POs), ordens de venda (SOs), faturas e notas de entrega estรฃo entre os documentos mais comumente trocados por meio do IDoc.

O processo de transferรชncia de dados para fora do seu SAP sistema รฉ chamado de Processo de saรญda, enquanto os dados se movem para o seu SAP sistema รฉ chamado de Processo de entradaComo desenvolvedor ou consultor responsรกvel pela configuraรงรฃo desses processos em sua organizaรงรฃo, as etapas para configurar cada um deles estรฃo detalhadas abaixo.

O processo de saรญda

Etapas envolvidas:

  1. Criar segmentos (WE31).
  2. Criar um tipo de IDoc (WE30).
  3. Criar um tipo de mensagem (WE81).
  4. Associe o tipo de mensagem ao tipo de IDoc (WE82).
  5. Criar uma porta (WE21).
  6. Se vocรช usar o mรฉtodo de controle de mensagens para acionar IDocs, crie o mรณdulo de funรงรฃo que constrรณi o IDoc e vincule-o a um processo de saรญda. Code.
  7. Caso contrรกrio, crie um mรณdulo de funรงรฃo ou um programa independente que crie o IDoc diretamente.
  8. Crie um Perfil de Parceiro (WE20) com as informaรงรตes necessรกrias nos parรขmetros de saรญda para o parceiro com quem vocรช troca o IDoc e acione o IDoc.

O processo de entrada

Etapas envolvidas:

  1. Criar o tipo de IDoc bรกsico (transaรงรฃo WE30).
  2. Criar o tipo de mensagem (transaรงรฃo WE81).
  3. Associe o tipo de mensagem ao tipo de IDoc bรกsico (transaรงรฃo WE82).
  4. Crie o mรณdulo de funรงรฃo para processar o IDoc.
  5. Defina as caracterรญsticas do mรณdulo de funรงรฃo (BD51).
  6. Atribua o mรณdulo de funรงรฃo de entrada ao tipo de mensagem (WE57).
  7. Defina o processo Code (Transaรงรฃo WE42).
  8. Criar o perfil do parceiro (transaรงรฃo WE20).

Perguntas Frequentes

IDoc รฉ assรญncrono e usado para mensagens entre sistemas via ALE ou EDI. BAPI รฉ sรญncrono e usado para acesso em tempo real a... SAP Objetos de negรณcio. O IDoc รฉ enfileirado; a BAPI retorna imediatamente.

Um Tipo de IDoc define a estrutura tรฉcnica de segmentos e campos. Um Tipo de Mensagem define o significado comercial, como Pedidos ou Faturas. Um Tipo de IDoc pode servir a vรกrios Tipos de Mensagem e vice-versa.

Utilize as transaรงรตes WE02 ou WE05 para exibir IDocs e inspecionar registros de status. As transaรงรตes de saรญda utilizam os cรณdigos de status de 1 a 42; as de entrada, de 50 a 75. A transaรงรฃo BD87 reprocessa IDocs com erros.

O campo SDATA, que armazena a carga รบtil em cada registro de dados, tem 1000 caracteres. Um IDoc pode conter muitos registros de dados, portanto, a carga รบtil total aumenta proporcionalmente ao nรบmero de segmentos.

Sim. Os IDocs sรฃo independentes de sistema e seguem padrรตes EDI como ANSI ASC X12 e EDIFACT. Nรฃo-SAP Os sistemas podem produzir ou consumir arquivos IDoc por meio de portas de arquivo ou middleware, como por exemplo... SAP PI/PO.

Os registros de controle ficam na tabela EDIDC, os registros de dados nas tabelas EDID2 a EDID4 e os registros de status na tabela EDIDS. O nรบmero do IDoc รฉ a chave que vincula todas as trรชs tabelas para um determinado IDoc.

Ferramentas de monitoramento baseadas em IA agrupam erros recorrentes de IDoc, preveem falhas a partir de padrรตes histรณricos e recomendam correรงรตes para problemas de status 51 ou 56, reduzindo significativamente o tempo de reprocessamento manual.

Sim. Mapa baseado em IAping Os motores comparam as definiรงรตes de segmento em todo o sistema. SAP e sistemas parceiros, propรตem um mapa de campo.pinge aprender com correรงรตes anteriores โ€” reduzindo drasticamente a configuraรงรฃo manual em projetos ALE e EDI.

Resuma esta postagem com: