Escolar Documentos
Profissional Documentos
Cultura Documentos
Manual Pratico de IDOC ALE e EDI
Manual Pratico de IDOC ALE e EDI
IDoc
O que ALE?
SAP ALE (Application Link Enabling) a tecnologia proprietria que permite a comunicao de dados
entre dois ou mais ambientes SAP R/3 ou R/3 e sistemas de terceiros. A tecnologia ALE facilita rpida
prototipao de aplicao e desenvolvimento de interface de aplicao, e ainda reduz o tempo de
implementao.
ALE vem com cenrios de integrao/distribuio de aplicao e um conjunto de ferramentas, programas,
definio de dados e metodologias que voc pode facilmente configurar para construir e rodar uma
interface.
A arquitetura de ALE composta de trs camadas:
Application layer. Esta camada fornece a ALE uma interface para criar ou receber mensagens contendo
dados para/de sistemas externos (ou outra SAP R/3).
Distribution layer (ALE layer). A camada de distribuio filtra e converte mensagens contendo dados
baseados de regras predefinidas ou customizadas. Estas converses podem ocorrer para assegurar a
compatibilidade entre diferentes releases de R/3 e R/2.
Communications layer. As comunicaes ALE so realizadas tanto sincronamente quanto
assincronamente. Transmisses de mensagens sincronamente so tipicamente usadas para leitura de
dados diretamente, enquanto transmisses de mensagens assincronamente so usadas para transmitir e
receber dados da aplicao.
Pg 2 de 18
Pg 3 de 18
Pg 4 de 18
Registro de controle, ou EDI_DC, uma estrutura de controle que contm vrios campos com
as informaes sobre o IDoc, tais como o tipo de IDoc, o tipo de mensagem, informao de
sender e de receiver, e a direo (1 para outbound e 2 para inbound). Estas informaes
Pg 5 de 18
Porta. Porta a representao lgica de canal de comunicao em SAP, com os IDocs sendo os dados
comunicados. So quatro tipos de portas que podem ser definidos em R/3: tRFC, File, R/2, e Internet.
ALE pode utilizar todas os tipos de porta para distribuir IDocs, enquanto EDI tipicamente utiliza a porta
baseada em file. As portas tipo tRFC e file podem ser ligadas aos destinos RFC conectados em R/3para-R/3 ou TCP/IP.
Pg 6 de 18
Pg 7 de 18
Nome de campo
Elemento de dados
BANK_CTRY
BANK_KEY
BANK_NAME
CITY
BANKS
BANKK
BANKA
ORT01_GP
Pg 8 de 18
LIKE
LIKE
BAPI1011_LIST
SERIAL-CHNUM
Tabelas:
Nome parmetro
RECEIVERS
COMMUNICATION_DOCUMENTS
'0'
Opc.
Trans
X
X
Atrib.
Tipo referncia
Opc.
LIKE
LIKE
BDI_LOGSYS
SWOTOBJID
Exceo:
ERROR_CREATING_IDOCS
Texto fonte:
*-------------------*
* Tabelas internas
*-------------------*
DATA: BEGIN OF ti_bank_list OCCURS 0.
INCLUDE STRUCTURE bapi1011_list.
DATA: END OF ti_bank_list.
*-------------------*
* Variveis globais
*-------------------*
DATA: idoc_control
idoc_data
idoc_receiver
idoc_comm
syst_info
LIKE
LIKE
LIKE
LIKE
LIKE
bdicontrol,
edidd
OCCURS 0 WITH HEADER LINE,
bdi_logsys OCCURS 0 WITH HEADER LINE,
edidc
OCCURS 0 WITH HEADER LINE,
syst.
*----------------*
* Processamento
*----------------*
* Popular registro de controle
* Tipo de mensagem
idoc_control-mestyp = 'ZMG_BANKLIST'.
* Tipo de IDoc
idoc_control-idoctp = 'ZID_BANKLIST'.
idoc_control-serial = sy-datum.
idoc_control-serial+8 = sy-uzeit.
*-------------------*
* Seleo de dados
*-------------------*
LOOP AT receivers.
Pg 9 de 18
distribute idocs
REFRESH: idoc_receiver, idoc_comm.
APPEND receivers TO idoc_receiver.
= idoc_control
= serial_id
= idoc_data
= idoc_receiver
= idoc_comm
= 1
= 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4
RAISING error_creating_idocs.
ENDIF.
IF communication_documents IS REQUESTED.
LOOP AT idoc_comm.
CLEAR communication_documents.
communication_documents-objtype = 'IDOC'.
communication_documents-objkey
= idoc_comm-docnum.
communication_documents-logsys
= idoc_comm-rcvprn.
communication_documents-describe = space.
APPEND communication_documents.
ENDLOOP.
ENDIF.
ENDLOOP.
* applications do commit work to trigger communications
Pg 10 de 18
Pg 11 de 18
Pg 12 de 18
Pg 13 de 18
Pg 14 de 18
Pg 15 de 18
2) Suponha que no SAP no existe uma BAPI que satisfaz a necessidade do usurio. Por exemplo, o
SAP precisa receber IDocs para alimentar uma tabela Z.
Pg 16 de 18