Post by Eduardo Gonçalves da Silva
Consultor SAP ABAP Júnior | Desenvolvedor ABAP Cloud & Fiori | S/4HANA (RAP, CDS Views) | Ex-Natura (Business Analyst)
Boa tarde pessoal tudo bem ? vou falar um pouco de um dos meus projetos siec que fiz na conclusão da academia, solução: criar uma transação no SAP ecc que exporta arquivos contábeis em .csv, para um sistema legado, primeiro logo de cara, eu criei o pacote, o programa e a transação a mesma ficou como ZFII001, podemos ver abaixo em um trecho do código na workbenth se80 depois eu criei a tela de parâmetros, coloquei 3 parâmetros, sendo o ultimo como selection option caso queira usar um range, coloquei tambem alguns campos como obrigatório, e apontei a typagem de dados diretamente para os campos da tabela para pegar a typagem correta e evitar dumps por typagem; depois para ficar mais dinâmico ao user, e ele saber o que esta exportando pensando na UX experiência que via muito em projetos, eu criei um contêiner na screen painter como 200, chamei essa tela via código, trouxe os padrões dos ícones no status gui, troquei o titulo gui, e inclui um botão de ação para o user exportar os dados, pronto ao clicar no botão ele vai pedir permissão para salvar os arquivos na pasta de rede onde se conecta via ftp ou similar, e lá vai estar o arquivo exportado, na barra de status eu coloquei uma mensagem avisando que a exportação deu certo, e a quantidades de linhas exportadas, foi usado as tabelas bseg e bkpf, e logo de cara ao consultar as tabelas eu percebi que só iria precisar dos tipos 'SA', então via hardcode inclui isso na busca do select bom para buscar os dados basicamente, eu fiz um select na tabela cabeçalho, depois fiz um for all entries para uma local table, na tabela de itens e detalhes, e fiz uma sort para ordenar os campos chaves, e na hora de fazer o loop e leitura poder usar o binary search deixando mais rápido a consulta, nesse caso eu poderia fazer via join's pois a tabela não é mais cluster, porem preferi fazer assim pois o Join não é bom para todos os casos. eu sei e uma coisa simples de SAP mais eu gosto,