Scripts SAP PM podem reduzir tarefas repetitivas, mas não transformam uma automação de tela em integração robusta. SAP GUI Scripting, macro Excel e RPA atuam sobre a interface. Quando a equipe SAP disponibiliza uma BAPI ou serviço compatível com o objeto e a versão, a automação pode usar um contrato de negócio em vez de controlar a tela. A escolha correta depende do risco, volume, frequência, estabilidade, necessidade de operação sem supervisão e evidência exigida.
O cenário mais comum começa com uma variante de IW38 exportada para Excel. A equipe limpa a lista, distribui trabalho e depois tenta lançar confirmações da IW41 em lote. O ganho aparente é velocidade. O risco é perder identidade, executar seleção antiga, repetir confirmação, esconder erro de autorização ou aceitar como concluído algo que nunca foi gravado no documento correto.
A escolha começa pelo processo e pelo risco da informação. Objeto técnico, ordem, operação, identidade, horário, status, retorno, exceção e evidência precisam permanecer ligados quando planilhas, filas, integração ou trabalho offline participam do caminho entre origem e SAP.
Automação de SAP PM com fronteira e dono
O responsável define evento inicial, pré-condições, decisão, execução, documento oficial e aceite antes de escolher a tecnologia. O desenho cobre indisponibilidade, dado inválido, duplicidade, estorno, reprocessamento e divergência entre origem e SAP.
A unidade de trabalho pode ser uma ordem, operação ou confirmação identificada por chave estável. A unidade de controle é o lote reconciliado entre fonte, execução e documento SAP. Essa separação impede somar registros incomparáveis, encerrar uma fila sem tratar sua causa ou calcular produtividade com dados reconstruídos depois do turno.
IW38, IW41, GUI Scripting, BAPI e integração
A documentação oficial do SAP GUI Scripting define a automação da interface. Ela não comprova a existência de uma BAPI específica para confirmação no ambiente do cliente.
| Objeto ou recurso | Papel no processo |
|---|---|
| IW38 | Seleciona e processa listas de ordens. A variante, data, status e escopo precisam acompanhar a extração. |
| IW41 | Cria confirmação de ordem PM. A operação, horas, datas, texto e indicador de conclusão precisam ser reconciliados. |
| SAP GUI Scripting | Automatiza a interação com controles do SAP GUI usando a sessão e as autorizações do usuário. |
| Macro Excel | Prepara, valida ou aciona passos a partir da planilha. Não deve armazenar senha nem virar base oficial paralela. |
| RPA | Orquestra regras, filas, credenciais e exceções sobre tela ou API. Exige operação e monitoramento próprios. |
| BAPI e integração | Quando uma interface compatível é liberada pela equipe SAP, ela oferece um contrato de negócio. Objeto, operação, retorno e suporte precisam ser confirmados na versão e na arquitetura do cliente. |
Fechamento semanal com extrações divergentes
Em um cenário didático, uma fábrica de embalagens mantém 1.400 ordens abertas. Toda segunda-feira, o PCM executa IW38, exporta 220 ordens liberadas e distribui a programação em Excel. No fim dos turnos, líderes recebem folhas com horas e tentam lançar 480 confirmações na IW41. O atraso médio é de dois dias, 11% das linhas chegam sem operação e uma confirmação duplicada alterou custo e disponibilidade do recurso.
A equipe avaliou quatro caminhos. Um script local faria a exportação mais rápida, mas manteria a planilha e o lançamento manual. Um RPA poderia ler a planilha e operar IW41, desde que tivesse fila, credencial gerenciada e reconciliação. Se a equipe SAP validasse uma interface compatível, uma BAPI poderia criar confirmações por contrato, com desenvolvimento, testes e tratamento de retorno. A integração suportada pela solução de campo eliminaria a reconstrução, porque o dado nasceria durante a execução.
A decisão foi usar script somente para uma extração assistida e temporária, com modo de leitura, variante controlada e hash do arquivo. Confirmações deixaram de ser automatizadas por tela. Um piloto capturou início, fim, operação e texto no campo, enviou por integração, comparou retorno e colocou falhas numa fila visível. A equipe preservou o SAP como registro e retirou a planilha do papel de origem da confirmação.
Do pedido de dados ao runbook de produção
Oito controles distinguem extração de ordens, preparação em planilha e escrita transacional. Para confirmação, a lista oficial de confirmações é uma fonte de consulta do resultado; IW38 permanece uma lista de ordens.
- 1. Fronteira funcional. Declare se a rotina apenas lê IW38, prepara dados ou tenta escrever uma confirmação. Liste ambiente, transações, objetos e campos autorizados. Qualquer escrita não prevista encerra a execução antes do login.
- 2. Recorte reproduzível. Fixe variante IW38, filtros, data de corte, fuso, mandante e chave da ordem. O arquivo recebe identificador, contagem e hash. Outro revisor precisa reproduzir a mesma seleção antes que o extrato alimente uma decisão.
- 3. Identidade e segregação. Use usuário individual para tarefa assistida ou credencial técnica administrada para robô aprovado. Senha não entra em macro, código ou planilha. O log liga identidade, autorização, versão e horário a cada execução.
- 4. Validação antes da escrita. Confira ordem, operação, status, horas, unidade, datas, texto e indicador parcial ou final. Linha sem operação ou com ordem encerrada fica isolada. A automação não completa campo obrigatório por suposição.
- 5. Execução controlada. Teste em qualidade com lote pequeno, limite de carga, pausa segura e critério de interrupção. Popup inesperado, mudança de tela, autorização insuficiente ou latência além do limite interrompe a rotina sem avançar cegamente.
- 6. Retorno por registro. Preserve chave de origem, mensagem SAP, número do documento e resultado de cada linha. Estado verde do robô não comprova gravação. Rejeição e sucesso parcial seguem destinos diferentes e permanecem visíveis.
- 7. Reconciliação correta. Use IW38 e a exibição da ordem para conferir o recorte de ordens. Para confirmações, compare a chave de origem com o documento e a lista, por exemplo IW47 quando aplicável ao ambiente. IW41 é entrada. Fila e reprocessamento são confrontados com o documento e a lista de confirmações; IW38 permanece restrita ao recorte de ordens.
- 8. Recuperação e mudança. Antes de repetir, consulte o estado já gravado. Estorno, correção e nova tentativa conservam vínculo. Mudança de versão, variante ou tela exige regressão, decisão de liberar e plano de retorno com responsáveis e SLA.
Script, RPA, BAPI ou integração suportada
| Caminho | Quando usar | Quando reprovar | Evidência mínima |
|---|---|---|---|
| SAP GUI Scripting | Tarefa assistida, estável, de baixo volume e baixo risco | Processo crítico sem supervisão ou tela que muda com frequência | Gravação reproduzível, usuário identificado e comparação de resultado |
| Macro Excel | Preparação, limpeza e validação local de dados | Senha, regra central ou base oficial escondida na planilha | Arquivo versionado, origem registrada e regra revisável |
| RPA | Fluxo de tela com fila, exceção e operação formal do robô | Atalho individual sem monitoramento, dono ou recuperação | Fila, cofre, logs, alertas, SLA e reconciliação |
| BAPI ou serviço | Criação e alteração por contrato suportado e testável | Uso sem confirmar versão, commit, retorno e regra de negócio | Contrato, teste integrado, mensagens, idempotência e suporte |
| Integração suportada | Fluxo recorrente, crítico, com múltiplos objetos e sustentação | Projeto sem matriz de objetos, latência e responsabilidade | Arquitetura, escopo, segurança, logs e RACI aprovados |
Credencial, segregação e trilha da execução
Em scripts SAP PM, o proprietário funcional aprova seleção, campos e resultado esperado; segurança aprova identidade; TI sustenta execução; e manutenção responde pelas exceções do processo. Uma macro no computador do planejador não pode concentrar regra, credencial e aceite. O inventário deve mostrar versão, dono, ambiente, transações, modo de leitura ou escrita, dependências e data da última regressão.
Como evitar escrita duplicada e recorte instável
O histórico precisa permitir a reconstrução sem depender da memória do executante. Versão do script ou robô, identidade, seleção IW38, operação IW41, payload, retorno, exceção, reprocessamento e resultado reconciliado sustentam análise de falha, custo, MTTR, produtividade, revisão do plano e auditoria.
Para IW38, preserve variante, filtros, data de referência, status e hash da exportação. Para qualquer tentativa sobre IW41, preserve ordem, operação, horas, indicador parcial ou final, mensagem SAP e chave da confirmação. Assim, uma diferença deixa de ser atribuída genericamente ao robô e pode ser localizada na linha, na versão e no documento.
Teste por variante, volume e falha parcial
Separe a homologação em duas trilhas. A extração da IW38 comprova o conjunto lido, enquanto qualquer gravação de confirmação precisa provar identidade da fonte, idempotência, retorno por item e retomada seletiva. Use um pacote controlado de 20 eventos: 14 aceitos, três inválidos por regra de negócio, dois com falha técnica transitória e um já processado anteriormente. A soma desses estados deve permanecer verificável antes e depois do reprocessamento.
- Verificação 1: fonte definida na IW38. Fixe variante, centro de planejamento, tipo de ordem, status, intervalo, fuso do corte e colunas exportadas. Guarde usuário executor, horário, quantidade de linhas e hash do arquivo bruto sem incluir credencial. A leitura é reproduzível quando outra execução no mesmo corte devolve os mesmos números de ordem ou explica cada diferença por uma mudança posterior identificada.
- Verificação 2: esquema e chave de origem. Declare quais campos formam o evento, como sistema emissor, identificador do evento, ordem, operação e data de execução. Teste número de ordem vazio, operação que não pertence à ordem, data inválida e unidade fora do domínio. Cada linha precisa receber uma classificação antes de qualquer chamada de escrita, sem permitir que uma planilha reformate silenciosamente a chave.
- Verificação 3: identidade e segregação. Execute uma leitura com perfil autorizado, uma tentativa de gravação com perfil somente de consulta e uma gravação pelo usuário ou credencial técnica gerenciada prevista no desenho. A evidência contém identidade, função chamada e decisão de autorização, nunca senha ou token. O controle é aprovado quando o acesso insuficiente falha antes de alterar dados e a conta habilitada permanece vinculada a um responsável.
- Verificação 4: idempotência antes da escrita. Reapresente o evento já processado usando exatamente a mesma chave estável. O fluxo deve consultar seu estado persistido e devolver o documento encontrado, sem repetir a confirmação. Em seguida, altere apenas um campo descritivo e confirme que a chave continua protegendo o mesmo fato de negócio, em vez de criar duplicidade por diferença cosmética.
- Verificação 5: retorno individual. Para cada uma das 20 linhas, armazene chave de origem, horário da tentativa, resultado funcional, identificação da mensagem disponível e número do documento quando houver sucesso. O lote não pode ser marcado apenas como concluído ou falho. A aceitação exige uma resposta terminal por item ou um estado técnico explicitamente elegível para nova tentativa.
- Verificação 6: falha parcial contabilizada. Faça o primeiro processamento terminar com 14 documentos novos, três rejeições de negócio, dois erros transitórios e uma referência ao documento preexistente. Compare a soma com as 20 chaves de entrada e conserve a lista de documentos, sem usar a IW38 para reconciliar confirmações. Qualquer linha sem estado ou qualquer documento sem chave bloqueia a passagem para produção.
- Verificação 7: reprocessamento seletivo. Depois de recuperar o serviço, reenvie somente os dois eventos classificados como transitórios. Os 14 sucessos, as três rejeições e o duplicado reconhecido devem ficar fora da fila. O resultado passa quando os dois itens ganham documento, cada sucesso anterior continua com um único documento e a lista de confirmações, como IW47 conforme o ambiente, sustenta a contagem.
- Verificação 8: cancelamento e correção. Se uma linha aceita continha dado funcional errado, não a trate como falha técnica nem repita o lote. Abra o procedimento autorizado de cancelamento, relacione documento original, motivo, aprovador e eventual confirmação substituta. A cadeia fica completa quando a consulta mostra o documento inicial, sua reversão ou cancelamento e o novo resultado ligado à mesma ocorrência de origem.
- Verificação 9: limite de carga e retomada. Aumente o volume em degraus conhecidos e registre duração, tamanho do pacote, falhas de sessão e pressão sobre o ambiente, sem inferir um limite universal. Interrompa um pacote no meio e reinicie pelo último estado confirmado, não pela primeira linha. A liberação depende de não reprocessar sucessos e de manter resposta individual mesmo sob redução controlada do tamanho do lote.
- Verificação 10: regressão da interface escolhida. Para SAP GUI Scripting ou RPA, refaça o teste após mudança de tela, variante, idioma e versão permitida; para BAPI ou integração suportada, valide contrato, autorização e retorno definidos para a interface efetivamente aprovada. Uma extração de leitura e um pacote de escrita em ambiente de teste compõem a prova. Se objeto, mensagem ou sequência mudar, suspenda a automação até revisar o procedimento e seus critérios de recuperação.
Integração da camada operacional com o SAP
PM Run Planejamento trabalha com capacidade, turnos, habilidades, programação e ordens integradas ao SAP. PM Run Mobilidade pode registrar trabalho por operação e devolver confirmações pelo fluxo integrado, reduzindo a reconstrução posterior em papel e planilha.
O SAP continua como sistema de registro. PM Run não é um robô genérico de IW38 ou IW41 e não determina qual BAPI, serviço ou autorização existe no cliente. A equipe SAP valida a interface suportada para a arquitetura e a versão.
Continue o percurso técnico: como escolher a arquitetura de software para SAP PM, como validar o log de integração SAP PM, como o apontamento tardio distorce indicadores, software de manutenção integrado ao SAP PM.
Runbook para extrair IW38 sem criar uma verdade paralela
O fechamento semanal precisa comparar ordens programadas, executadas e ainda pendentes. A extração de IW38 usa variante controlada, campos identificados, data de corte e fuso documentado. O arquivo recebe identificador da execução e hash, enquanto o relatório registra sistema, cliente, usuário técnico autorizado, seleção e quantidade de linhas. Uma planilha intermediária nunca se torna fonte oficial apenas porque circula por e-mail.
Antes de automatizar, o dono do processo executa a variante manualmente e reconcilia uma amostra com as ordens no SAP. Ele verifica status múltiplos, ordens com operação em outro período, cancelamentos, paginação e formatação local de datas e números. A macro Excel pode preparar uma análise, mas não corrige o significado dos campos. Transformações ficam versionadas e testadas com entradas conhecidas.
SAP GUI Scripting atende uma tarefa assistida e estável quando a interface é o único caminho aprovado. A rotina verifica ambiente, transação, variante e contagem antes de exportar. Mudança de janela, popup inesperado ou campo ausente interrompe com mensagem clara. Coordenadas de tela, pausas fixas e cliques cegos são rejeitados porque produzem sucesso aparente no objeto errado.
Escrita em IW41 exige controle mais forte
Uma automação de confirmação pode alterar capacidade, custo e estado operacional. O caso de uso só avança quando existe autorização explícita, identidade rastreável, validação por operação, proteção contra duplicidade e retorno individual. Um lote parcialmente aceito não é reenviado inteiro. O runbook separa confirmados, rejeitados e inconclusivos, preservando a chave de cada tentativa.
RPA orquestrado acrescenta cofre de credenciais, agenda, fila, observabilidade e tratamento operacional, mas ainda depende da tela quando usa GUI. Se a versão e a arquitetura disponibilizarem uma BAPI ou serviço oficialmente suportado para o objeto, essa interface pode ser preferível em uma integração transacional recorrente. A equipe SAP valida disponibilidade e contrato, sem presumir que algo visto em outro ambiente esteja liberado neste.
A matriz de escolha considera criticidade da escrita, volume, frequência, estabilidade da interface, necessidade de retorno síncrono, suporte do fornecedor, segregação e custo de operação. Script local pode resolver uma extração assistida de baixo risco. Um processo diário com milhares de registros e obrigação de recuperação pede integração gerenciada. O menor esforço inicial não define sozinho a arquitetura.
Falha parcial e capacidade de repetição
O teste contém registros válidos, ordem encerrada, operação inexistente, autorização insuficiente, timeout e duplicidade. A execução precisa identificar o último resultado confirmado sem adivinhar. Retomar a partir de um checkpoint requer idempotência ou uma consulta segura do estado. Caso isso não seja possível, o runbook direciona reconciliação humana antes de qualquer novo envio.
Logs guardam identificadores técnicos, decisão, duração e códigos de retorno sem expor senha, token ou dado desnecessário. A retenção acompanha requisitos de auditoria. A credencial não fica na macro, no repositório, no arquivo exportado ou no histórico do terminal. A pessoa que aprova o lote pode ser separada de quem mantém a automação.
Critério para aposentar a rotina
O proprietário revisa mudança da transação, incidentes, retrabalho, volume e alternativas suportadas. Uma atualização de SAP, alteração de variante ou crescimento do processo pode invalidar a escolha original. A automação recebe versão, dono, teste de regressão e plano de desativação. Arquivo temporário é removido segundo política, e a evidência necessária permanece.
O resultado aceito do fechamento reconcilia totais, amostra e exceções com o SAP PM. Divergência acima do critério interrompe a publicação do indicador. Essa regra protege a organização de tomar decisão sobre uma extração tecnicamente concluída, mas semanticamente incompleta.
Fontes técnicas
As referências técnicas delimitam os recursos documentados. Configuração, campos, autorizações e comportamento precisam ser confirmados na versão e no ambiente da empresa antes do piloto.
- SAP GUI Scripting API.
- SAP GUI Scripting Security Guide.
- SAP GUI Scripting, Notes for Users.
- SAP GUI Scripting Security Q&A.
- SAP Help, cobertura transacional móvel usada na avaliação da automação.
Perguntas frequentes
Quando SAP GUI Scripting é aceitável?
Em tarefa assistida, estável, de baixo risco e com usuário identificado, preferencialmente de leitura. A tela, a variante e o retorno precisam ser testados novamente após mudança de versão.
Macro Excel pode lançar IW41?
Poder executar um passo de tela não torna o desenho aceitável. Para confirmação, o risco envolve duplicidade, horas, custo e estado da operação. Uma integração com contrato e retorno por registro oferece controle superior.
Qual evidência deve acompanhar uma extração IW38?
Variante, filtros, data de referência, ambiente, usuário, quantidade, chaves de ordem, hash do arquivo e comparação com a lista SAP no mesmo recorte.
RPA substitui BAPI?
Não de forma automática. RPA governa um fluxo de automação, muitas vezes sobre tela. Quando validada para o objeto e a versão, uma BAPI ou serviço oferece um contrato de negócio. Volume, estabilidade, suporte, exceção e criticidade determinam a escolha.
Como o PM Run reduz dependência de scripts?
O dado pode nascer no planejamento ou na execução móvel e retornar pelo fluxo integrado documentado, evitando reconstruir confirmações a partir de papel e planilha. SAP continua como sistema de registro.
