Você está na página 1de 13

Conectando o SAP com

Excel

SAP SCRIPTING
COM CRISTIANE BATISTA

CRISTIANE BATISTA
QUEM É CRISTIANE BATISTA?

Antes de tudo sou a Cris, mãe da Isa e do Lucas, tenho 51 aninhos e

completamente apaixonada pela educação e pela tecnologia.

Sou formada e pós graduada em análise de sistemas, atuo na área SAP desde

2007, me especializei também em comércio exterior e tecnologias

educacionais. Minha grande paixão é a educação, sou pedagoga e professora,

sai da sala de aula mas continuo na educação corporativa e agora nas redes.

Atualmente sou consultora sênior na Wayon atendendo um grande cliente: a

Goodyear.

Além de sempre ter sido consultora, atuei como quality assurance, P.O, customer

sucess, gestora de conhecimento e design instrucional. Quero dividir todos esses

meus conhecimentos com todos aqueles que se interessarem


Vamos ao sap scripting,

mas antes de começar...

1. Verifique em "Opções" se o seu gravador está ativo.


Caso não esteja, ative-o mas deixe-o como na figura

abaixo:

OBS: (Só terá validade depois de logar novamente no SAP)


Caso não esteja ativo – vá na transação RZ11 e

digite o código sapgui/user_scripting

Modificar Valor

Altere para True o Valor atual

OBS: Você precisa se logar novamente no SAP


DICAS IMPORTANTES ANTES DE COMEÇAR:

Esteja logado e feche todas as janelas SAP,

deixe apenas uma janela aberta, (dica para

iniciantes.)

Sempre Rode a transação a ser gravada

antes de iniciar, pois há algumas transações

que deixam sempre uma tela diferente de

acordo com a última vez que foi acessada,

por isso se atente em como vai deixar a

mesma.

Digite a transação na barra SAP, nunca use

o "favoritos" – ele pode não gravar o clique

Se quiser um layout definido, faça isso

anteriormente, para quando entrar esteja

no local desejado
Durante a gravação clique em todos os

campos que deseja mapear, para se garantir

apague o que o sistema trouxe e coloque

outro o mesmo, mas digite o valor

Esteja preparado a fazer isso muitas vezes,

até que o código fique limpo

Usaremos, durante o curso várias transações

SAP para exemplificar a gravação de Scripts

Vá em Opções – Gravador de Script – Clica

no ... Escolha um nome .VBS e um local para

guardar

1
2 Clique no gravador e comece com sua

transação a ser gravada – caso o nome

escolhido já exista na sua pasta ele

perguntará se deseja sobregravar o

script, caso clique em sim ele perderá o

que for feito antes

3
ANÁLISE DO CÓDIGO

A seguir temos um template de código,

copie e cole-o no seu notepad ou direto no

vb.

Na parte onde está "colocar a transação

gravada..." coloque o seu código, o gerado

pelo gravador de script do SAP.


TEMPLATE DE CÓDIGO

OPTION EXPLICIT

SUB PEDIDO()

'1.A PARTE INSERIDO PÓS GRAVAÇÃO

DIM OBJEXCEL
DIM OBJSHEET
DIM INTROW
DIM I
DIM OFILESYSTEM
DIM SAPGUIAUTO
DIM APPLICATION
DIM MESSAGE
DIM EMBARQUE
DIM PROX_LINHA
DIM LINHA_INICIAL
DIM LINHA_FINAL
DIM TEMPO AS DOUBLE
DIM TEMPO_GASTO AS DOUBLE
DIM CONNECTION, SESSION, WSCRIPT

'----------------------------------------------------

'2.PARTE GERADO PELO GRAVADOR


----------------------------------------------------
TEMPLATE DE CÓDIGO
IF NOT ISOBJECT(APPLICATION) THEN

SET SAPGUIAUTO = GETOBJECT("SAPGUI")

SET APPLICATION = SAPGUIAUTO.GETSCRIPTINGENGINE

END IF

IF NOT ISOBJECT(CONNECTION) THEN

SET CONNECTION = APPLICATION.CHILDREN(0)

END IF

IF NOT ISOBJECT(SESSION) THEN

SET SESSION = CONNECTION.CHILDREN(0)

END IF

IF ISOBJECT(WSCRIPT) THEN

WSCRIPT.CONNECTOBJECT SESSION, "ON"

WSCRIPT.CONNECTOBJECT APPLICATION, "ON"

END IF

'-----------------------------------------------------------------------
'3. PARTE INSERIO TRECHO PARA USO GERAL

TEMPO = NOW()

'CONTADOR INSERIDO

LINHA_INICIAL = INPUTBOX("QUAL A LINHA QUE INICIA SEU


SCRIPT?", LINHA_INICIAL)
LINHA_FINAL = INPUTBOX("QUAL A LINHA QUE TERMINA SEU
SCRIPT?", LINHA_FINAL)

FOR I = LINHA_INICIAL TO LINHA_FINAL

'-----------------------------------------------------------------------
-
TEMPLATE DE CÓDIGO

'COLOCAR A TRANSAÇÃO- AQUI A GENTE COLA O


TRECHO GRAVADO NO SAP

'-----------------------------------------------------------

'FINALIZAR

'MEDIR TEMPO
TEMPO_GASTO = NOW() - TEMPO

'MSGBOX NOW() - TEMPO

' ALTERE PARA O ENDEREÇO QUE DESEJA COLOCAR O


TEMPO GASTO

CELLS(I, 16).VALUE = TEMPO_GASTO


CELLS(I, 1) = " PEDIDO OK"
CELLS(I, 17).VALUE = CELLS(I, 2)

NEXT

END SUB
A primeira regra de qualquer
tecnologia utilizada nos negócios é que

a automação aplicada a uma


operação eficiente aumentará a
eficiência.

Asegunda é que a automação


aplicada a uma operação ineficiente
aumentará a ineficência (Bill Gates)
saia do zero
Veja os vídeos sobre esse assunto e

para sua primeira automação no SAP.

Ate o momento temos duas séries de vídeos sobre o

assunto

Acesse meu canal e as redes sociais:

CRISTIANEB.CONSULTORIA

Você também pode gostar