Escolar Documentos
Profissional Documentos
Cultura Documentos
Batch input uma ferramenta usada para alimentar o banco de dados do SAP, simulando a
transao .
Banco de
dados antigo
Arquivo
Legado
BDCDATA
Pasta SM35
Banco de
dados SAP
Batch Input
O Batch Input composto pelas seguintes funes:
BDC_OPEN_GROUP
Funo responsvel pela criao de uma pasta na transao SM35
Ex.:
BDC_INSERT
Funo responsvel pela inserso dos dados extrados do arquivo legado (atravs da
estrutura BDCDATA)
Ex.:
Nome da transao
Tabela interna espelho
da BDCDATA
BDC_CLOSE_GROUP
Funo responsvel por fechar a pasta criada.
Ex.:
Para inserir dados no banco de dados, o Batch Input simula a insero de dados pela
transao desejada.
Ex.: Para fazer uma carga de materiais dentro do R/3, o Batch Input simula a transao
MM01, que a transao usada para a criao de materiais.
Cada transao composta de uma ou mais telas.
As telas so compostas por:
Nome do Programa
(PROGRAM)
Nmero
(DYNPRO)
Campos
(FNAM)
Valores
(FVAL)
PROGRAM,DYNPRO,FNAM,FVAL so alguns campos da estrutura BDCDATA. (fig.1.1)
Batch Input
BDCDATA
PROGRAM
DYNPRO
DYNBEGIN
SAPLSD41
2100
FNAM
FVAL
DD02DSTRNAME
DD02D-DDTEXT
BDC_OKCODE
0001
Texto
SAVE
Obs.:
O campo Dynbegin significa se (X) ou no( ) o inicio da tela.
BDC_OKCODE, o comando usado para simular aes como ENTER,SAVE,F1 etc..
Exemplo programa Batch Input
Este programa insere dados na transao FI01.
Esta transao referente criao de Bancos. Ela contm duas telas, e estaremos
preenchendo 02 campos na primeira tela , e 01 campo na segunda tela, conforme ilustrado
na figura 2.1.
REPORT ztreinamento .
DATA: BEGIN OF ti_bdcdata OCCURS 0.
INCLUDE STRUCTURE bdcdata.
DATA: END OF ti_bdcdata.
start-of-selection.
perform
perform
perform
perform
open_group.
preencher.
insert.
close_group.
*---------------------------------------------------------------------*
*
Form open_group
*---------------------------------------------------------------------*
form open_group.
CALL FUNCTION 'BDC_OPEN_GROUP'
EXPORTING
client = sy-mandt
group = 'pasta'
user
= sy-uname.
endform.
" open_group
Batch Input
*---------------------------------------------------------------------*
*
Form insert
*---------------------------------------------------------------------*
form insert.
CALL FUNCTION 'BDC_INSERT'
EXPORTING
TCODE
= 'FI01'
TABLES
dynprotab
= ti_bdcdata.
endform.
" insert
*---------------------------------------------------------------------*
*
Form close_group
*---------------------------------------------------------------------*
form close_group.
CALL FUNCTION 'BDC_CLOSE_GROUP'.
endform.
" close_group
*---------------------------------------------------------------------*
*
Form preencher
*---------------------------------------------------------------------*
form preencher.
*---> 1a. Tela
move: 'SAPMF02B'
to
'0100'
to
'X'
to
append ti_bdcdata.
clear ti_bdcdata.
move: 'BNKA-BANKS'
to
'BR'
to
append ti_bdcdata.
clear ti_bdcdata.
move: 'BNKA-BANKL'
to
'237212349'
to
append ti_bdcdata.
clear ti_bdcdata.
move: 'BDC_OKCODE'
to
'/0'
to
append ti_bdcdata.
clear ti_bdcdata.
*---> 2a. Tela
move: 'SAPMF02B'
to
'110H'
to
'X'
to
append ti_bdcdata.
clear ti_bdcdata.
move: 'BNKA-BANKA'
to
'Banco teste'
to
append ti_bdcdata.
clear ti_bdcdata.
move: 'BDC_OKCODE'
to
'/11'
to
append ti_bdcdata.
clear ti_bdcdata.
endform.
ti_bdcdata-program,
ti_bdcdata-dynpro,
ti_bdcdata-dynbegin.
ti_bdcdata-fnam,
ti_bdcdata-fval.
ti_bdcdata-fnam,
ti_bdcdata-fval.
ti_bdcdata-fnam,
ti_bdcdata-fval.
ti_bdcdata-program,
ti_bdcdata-dynpro,
ti_bdcdata-dynbegin.
ti_bdcdata-fnam,
ti_bdcdata-fval.
ti_bdcdata-fnam,
ti_bdcdata-fval.
" preencher
Batch Input
Fig(1.1)
Batch Input
Fig. (1.2)
Batch Input
Fig. (1.3)
Batch Input
Fig 2.1
Transao FI01
1 tela
Batch Input
2a. Tela