SAP Tutorial IDOC: Definição, Estrutura, Tipos, Formato e Tabelas

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 especificado que é trocado entre 2 sistemas que sabem interpretar esses dados.

IDOC significa ” Documento Intermediário”

Quando executamos um saída Processo ALE ou EDI, um IDOC é criado.

De acordo com o relatório SAP System, os I DOCs são armazenados no banco de dados. Todo IDOC tem 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 padrões, ANSI ASC X12 e EDIFACT. Caso haja algum conflito no tamanho dos dados, adota-se um de maior comprimento.
  • IDOCs são independente da direção da troca de dados por exemplo, ORDERS01: Módulo de compras: entrada e saída
  • IDOCs podem ser visualizados em um editor de texto. 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 I doc consiste em 3 partes –

  1. A parte administrativa (Registro de controle)- que possui o tipo de idoc, tipo de mensagem, o status atual, o remetente, o destinatário etc. Isso é conhecido como registro de controle.
  2. Os dados do aplicativo (Registro de Dados) – Que contém os dados. Eles são chamados de registros de dados/segmentos.
  3. As informações de status (Registro de status)- Fornecem informações sobre os vários estágios pelos quais o idoc passou.

Você pode visualizar um I-DOC usando transação WE02 or WE05

Estrutura de um IDOC

Como pode ser visto na captura de tela acima, o registro IDOC possui três partes: Controle, Dados e Status. Vamos examiná-los em detalhes – Registro de controle

  • Todos os dados do registro de controle são armazenados na tabela EDIDC. A chave para esta tabela é o número IDOC
  • Ele contém informações como número IDOC, direção (entrada/saída), remetente, informações do destinatário, canal que está usando, qual porta está usando, etc.
  • A direção '1' indica saída, '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, etc.
  • Todos os dados do registro de dados são armazenados em tabelas EDID2 a EDID4 e EDIDD é uma estrutura onde você pode ver seus componentes.
  • Ele contém dados como o número do idoc, nome e número do segmento no idoc, a hierarquia e os dados
  • Os dados reais são armazenados como uma string em um campo chamado SDATA, que é um campo de 1000 caracteres.

Registro de status

  • O registro de status é anexado a um I-DOC em cada marco ou quando encontra erros.
  • Todos os dados de registro de status são armazenados na tabela EDIDS.
  • Os status 1 a 42 são para saída, enquanto 50 a 75 para entrada

Tipos de IDOC

Um tipo I DOC (Básico) define a estrutura e o formato do documento comercial que será trocado. Um IDOC é uma instância de um tipo IDOC , assim como o conceito de variáveis ​​e tipos de variáveis ​​em linguagens de programação. Você pode definir tipos de IDOC usando WE30

O que é um Segmento?

Um segmento define o formato e a estrutura de um registro de dados no I-DOC. Segmentos são componentes reutilizáveis.

Para cada segmento SAP cria

  • Tipo de segmento (independente da versão)
  • Definição de segmento (depende da versão)
  • Documentação do segmento

Os últimos 3 caracteres são a versão do segmento

As definições continuam mudando de acordo com a versão, mas o tipo de segmento permanece o mesmo.

transação:WE31

Segmento no IDOC

Qual é o tipo de extensão IDOC?

Um IDOC é de 2 tipos: -

  1. Basico
  2. Extensão

Tipo de IDOC de extensão

SAP fornece muitos tipos IDOC básicos predefinidos que não pode ser modificado. Caso queira adicionar mais dados a esses tipos básicos restritos, você pode usar um tipo de extensão. Na maioria das vezes você vai NÃO usar extensão.

Tipo de IDOC de extensão

Documentação

Cada IDOC é minuciosamente documentado na transação WE60

Documentação

Tipo de mensagem

Uma mensagem representa um tipo específico de documento que é transmitido entre dois parceiros Ex. Pedidos, respostas de pedidos, faturas etc.

Um tipo idoc pode ser associado a muitos tipos de mensagens

Além disso, um tipo de mensagem pode ser associado a diferentes tipos de idoc. Transação WE81

Tipo de mensagem

Visualizações 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 tipo de mensagem específico.
As visualizações IDOC são usadas para melhorar o desempenho na geração de IDOCs para garantir que apenas os segmentos relevantes sejam preenchidos com dados. As visualizações IDOC são importantes apenas para processamento de saída.

Visualizações IDOC

Perfis de parceiros

Um parceiro é definido como um parceiro de negócios com quem você realiza negócios e troca documentos

No perfil de parceiro com quem trocamos Idocs, mantemos os parâmetros necessários para a troca dos dados. A transação utilizada é WE20.

Perfis de parceiros no IDOC

Porta

A porta define as características técnicas da conexão entre o seu SAP sistema e o outro sistema com o qual deseja transferir dados (subsistema). A porta define o meio no qual os dados são trocados entre os 2 sistemas.

Existem diferentes tipos de portas. Os 2 mais usados ​​são os Portas TRFC usado em ALE e Envie o portas que o EDI usa.

Para portas TRFC temos que fornecer o nome do destino lógico criado usando SM59.

Ao usar a porta de arquivo você pode especificar o diretório onde o arquivo IDOC deve ser colocado. O outro sistema ou middleware pegará o arquivo daqui. O módulo Function pode ser usado para gerar um nome de arquivo para o idoc. Enquanto Ensaios você pode usar “Arquivo de saída” para especificar um nome de arquivo constante. A aba “gatilho de saída” pode ser usado para fornecer informações se quisermos acionar algum processamento no subsistema quando um idoc for criado neste local. Temos que especificar o nome do arquivo de comando e o diretório que deve ser executado.

Porto no IDOC

Isso é tão CONFUSO!

Vamos entender o processo de criação de um IDOC com um exemplo –

  • Sempre que um Pedido de Compra (PO) é criado queremos enviar o IDOC para um fornecedor.
  • O pedido é enviado na forma de IDOC ao fornecedor (parceiro). Esse parceiro deve estar habilitado para EDI nesse sistema. SAP deve perceber que pode enviar o documento para este fornecedor eletronicamente.
  • O pedido de compra enviado como idoc de saída pelo cliente será um idoc de entrada para o fornecedor. O SAP O sistema do lado do fornecedor pode processar isso para criar um documento de aplicação (uma ordem do cliente) em seu sistema.
  • Cotação, RFQ, PO, SO, fatura, nota de entrega, etc. são alguns dos documentos comumente trocados através do IDOC

O processo de transferência de dados para fora do seu SAP sistema é chamado de Processo de saída, enquanto o dos dados entrando em você SAP sistema é chamado Processo de entrada. Como desenvolvedor ou consultor que estará envolvido na configuração do processo de teses para sua organização. Aqui estão as etapas de como configurá-los-

O processo de saída

Etapas envolvidas –

  1. Criar segmentos (WE31)
  2. Crie um tipo de idoc (WE30)
  3. Crie um tipo de mensagem (WE81)
  4. Associe um tipo de mensagem ao tipo idoc (WE82)
  5. Crie uma porta (WE21)
  6. Se você for usar o método de controle de mensagens para acionar idocs, crie o módulo de função para criar o idoc e associe o módulo de função a um código de processo de saída
  7. Caso contrário, crie o módulo de função ou programa independente que criará o idoc
  8. Crie um perfil de parceiro (WE20) com as informações necessárias nos parâmetros de saída do parceiro com quem deseja trocar o idoc.

O processo de entrada

Etapas envolvidas-

  1. Criação de tipo Idoc básico (Transação WE30)
  2. Criando tipo de mensagem (Transação WE81)
  3. Associando o tipo Mensagem ao tipo Idoc básico (Transação WE82)
  4. Crie o módulo de função para processar o idoc
  5. Definir as características do módulo de função (BD51)
  6. Alocar o módulo de função de entrada ao tipo de mensagem (WE57)
  7. Definindo código do processo (Transação WE42)
  8. Criação de perfil de parceiro (Transação WE20)