Testando IA com sistema SAP – Parte 1 Implementando notas

A ideia começou com um desafio que recebi num post do Linkedin. O pessoal disse que dava pra usar IA pra muita coisa no SAP inclusive implementar notas. Então resolvi iniciar a testar, se tem fumaça pode ter fogo mesmo.

Resolvi aprender como conectar um LLM a um ambiente SAP e descobrir quanto do trabalho de consultor daria para fazer com ajuda de IA.

Na prática, isso virou uma sequência de testes envolvendo MCP’s, SAP GUI, Eclipse ADT, VS Code, navegador, notas SAP, relatórios ABAP e aplicativos Fiori.

Para esse primeiro teste instalei o Codex, conectei na minha conta da OpenAI, instalei o VScode + ADT e também o MCP ARC-1. Se você não o que é um MCP, é tipo um serviço que permite a IA acessar dados e ferramentas específicas. Googleia aí porque tem bastante info sobre isso já na internet.

Usei um ambiente de S/4HANA para os meus testes, mas teria funcionado basicamente igual num Sistema ECC.

Já adianto, nem tudo que reluz é ouro tem coisa que a IA já faz bem, tem coisas que a IA pode vir a fazer bem com um pouco mais de contexto e tem coisas que precisa de gente e PENSAR também e vai continuar precisando.

Primeiro desafio pra IA: as notas da reforma tributária

O primeiro caso de uso foi trabalhar com as notas da reforma tributária brasileira, partindo da leading note 3561376, para a versão SAPK-10803INS4CORE.

Comecei pedindo para identificar os pré-requisitos a partir da leading nota de reforma tributária. Passei pelos percalços básicos do Codex pedir autorização para acessar o SAP for me (tive que logar manualmente), depois de baixar o XML ele não conseguia ler o XML (tive que dar acesso na pasta para ler e depois fazer upload no SAP).

Depois de ter o XML daí o sistema tomou o controle do SAP GUI (autorizei), tive que fazer isso porque não tem um comando de MCP que ele consiga implementar a nota, então ele foi lá, abriu a tela do SAP GUI, aí deu erro porque não estava logado no sistema. Loguei no sistema, mandei ele continuar.

Depois disso, o negócio começou, ele foi lá, conseguiu chamar o Note Analyzer, botou para rodar o import lá do XML, aí ele se perdeu um pouco porque demorou, demora né, rodando. Aí tive que dizer para ele continuar, aí ele olhou o resultado, aí mandei baixar as notas. Aí também se deu umas certas atrapalhadas, mas no final conseguiu baixar as notas.

O que ele não conseguiu ver bem foi o resultado do job porque baixa as notas em background e demora.

O escopo também foi refinado para excluir notas relacionadas a FI-CA, Insurance e IS-OIL.

Quando começa a implementar as notas, se tu ficar olhando a tela, dá um pouco de raiva, porque é meio ruim assim, o jeito que ele vai, que ele mais ou menos usa alguns controles que tem do SAP GUI para saber quais são as ações, aí tira um print da tela, manda pro servidor, processa, pelo contexto, ele vê o que é e aí dispara o próximo ação, o próximo controle do que ele tem que fazer.

Então, é meio ruim para isso e queima muito token para fazer uma coisa razoavelmente simples de clicando ali na tela e escolhendo as próximas ações. Além disso, não foi assim a melhor performance possível. Ele levou mais ou menos umas 12 horas para implementar umas 30 notas.

Claro, aos poucos eu tive que ir construindo algumas coisas que ele iria usar como padrão. Por exemplo, tem um warning que dá quando você está implementando uma nota dizendo que o objeto só pode ser gravado num pacote da SAP.

Eu sei que isso é um warning, mas as primeiras vezes que ele passou por esse warning ele parou e aí eu tive que escrever um comando pra ele, pra ele seguir e entender. Quando aparecer essa mensagem de erro, você pode ignorar e aí ele passou a ignorar. E assim, claro, tive que ir fazendo várias coisas como dizer qual tipo de request que ele podia usar, se era para gravar todas as notas na mesma request ou não.

Teve algumas notas que deu erro de sintaxe quando foi ativar, aí ele começa a buscar, entender, procurar de onde é que vem o erro de sintaxe. Eu cheguei numa nota que deu um erro de sintaxe que ele não conseguiu resolver, aí eu assumi manual e terminei.

Considerações sobre o uso da IA para as notas:

No geral o Codex implementou mais ou menos 30 notas nessas 12 horas (várias com passos manuais) e como eu tava usando o modelo mais avançado, não sabia, né, eu acabei usando um modelo que eu não precisava usar com raciocínio alto e saiu bem caro, custou mais ou menos uns 500 reais esse teste das notas.

Depois eu descobri que se eu tivesse usado outros modelos e o raciocínio mais baixo, muito provavelmente eu teria chegado no mesmo resultado e com um custo muito menor. Mas é, faz parte do processo de aprendizado, então tô documentato aqui, mostrando para vocês, para que vocês saibam também e evitem esse tipo de erro.

Mas eu consegui implementar as notas, de fato dá pra fazer, mas acho que não foi o melhor uso da IA. Implementar as notas e utilizar o SAP GUI, na verdade foi a pior performance dos pontos que eu testei, na parte 2 vou falar de prototipação e desenvolvimento abap junto com IA.

Nos próximos blogs eu vou falar sobre as outras coisas que eu testei e aí realmente onde eu acho que tem muita vantagem e a gente pode fazer muita coisa interessante.

No momento, implementar as notas ainda não achei a melhor funcionalidade, mas dá para fazer. E se for uma nota simples, ele funciona bem. Agora, esses conjuntos grandes de notas ainda têm dificuldades e a IA apanhou um pouco.

Em alguns sistemas, se for um sistema super atualizado, talvez na última versão e tenha poucas notas, até talvez funcione melhor, mas no mundo real não achei que a performance seja surpreendente para as notas.

Outras coisas como fazer protótipos, discutir ideias, desenvolver soluções em ABAP ou Fiori, aí eu acho que tem muito vantagem mesmo.

Eu fiz prompts bem toscos pra testar a IA de maneira conversacional, não é o jeito indicado mas queria simular um uso bem leigo. Se você sabe o que está fazendo e consegue passar essas informações pra IA no formato de Skills e comandos o resultado sempre vai ser melhor.

Mas achei muito positivo o teste, foi a primeira coisa que tinha feita com IA generativa acessando um sistema SAP direto. Nos próximos posts vou mostrar a criação de protótipos ABAP e Fiori, criação de documentação com IA e algumas outras coisas de produtividade.

Observações importantes sobre uso de IA/LLM’s/Agentes no geral:

-Testar coisas “a la loca” é caro: com os modelos mais avançados de IA consome muitos tokens e custa bastante. Você não precisa usar o modelo mais novo com a capacidade de análise no máximo para fazer as coisas, até porque isso torna o custo muito alto.

-Sem contexto do Sistema a IA perde muito tempo:Já existem soluções de software da SAP e de empresas terceiras para fornecerem contexto como o SAP Graph, SAP Joule novo e o Conduct.

-Não é um prompt mágico que resolve tudo: Iterações são a chave. Você precisa ir definindo regras, quais são os objetivos, quais são as premissãs, quais são as ações em que sistema, então precisa ir ensinando várias coisas até chegar no ponto de fazer algo. Isso é muito mais efetivo do que sair fazendo, então a IA não é resolvedora mágica de tudo sem pensar, não é um prompt que vai gerar uma solução de tudo, um programa customizado pronto, assim como fazer uma solução sem IA requer você ir pensando e aprimorando as idéias, fazer com a IA também exige isso.

-Segurança não é brincadeira: Não vou me prolongar muito nesse assunto, mas em resumo: Não dê acesso indiscriminado a tudo da sua máquina para uma IA, PONTO FINAL. Se você autorizar acesso ao sistema de arquivos, tela, navegador, email e outros softwares em geral isso expõe a sua máquina aos mais variados riscos como os erros de operação da IA (sim, a IA erra bastante) assim como problemas de governança (caso esteja conectado em redes corporativas) e vazamento de dados pessoais e de terceiros. Cuidado ao fazer testes.

-Governança, governança: Não adianta só a IA fazer, você precisar ter logs do que foi feito, dos acessos que foram usados, das alterações que foram feitas, do porquê delas e uma documentação de tudo que é alterado além de um fluxo de aprovação para garantir que a IA só vai fazer o que realmente precisa ser feito e autorizada por quem pode autorizar para aquele assunto.

Valeu Gurizada,

Renan Correa

Mais infos sobre a localização Brasil no ERP, direto da sap, vocês podem conferir no SAP community na tag de S/4HANA logistics for Brazil

Outros posts sobre Localização você pode conferir filtrando pela categoria NFE/CTE ou Localização BR Geral.