Integrar o SAP com sistema legado..
Integrar o SAP com PI…
Integrar o SAP com uma torradeira…
Integrar o SAP com mundos perdidos… Enfim… Este é o seu jogo, menino ABAP oO
Sábia que era possível gerar arquivos do pacote Office da Microsoft, mas nunca participei de nenhum projeto com esta demanda.
Mas, porque esperar a demanda para correr atras, resolvi tentar fazer um programinha de exemplo para gerar um texto no Word do Microsoft Office.
Meu objetivo era apenas escrever AbapZombie.com.
Então vamos:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | REPORT zombie_teste_ole. * Types-Pools *-------------------------------------* TYPE-POOLS: ole2. * Variables *--------------------------------------* DATA: v_word_app TYPE ole2_object, "Word Application v_documents TYPE ole2_object, "Documentos v_document TYPE ole2_object, "Documento v_selection TYPE ole2_object, "Linha de texto v_paragraph TYPE ole2_object, "Paragrafo (Alinhamento) v_font TYPE ole2_object. "Font (Cor, Tamanho, Fonte) "Cria o Application do Word CREATE OBJECT v_word_app 'WORD.APPLICATION'. "Documento será aberto após criação? SET PROPERTY OF v_word_app 'Visible' = '1' . "Cria a sessão de documentos CALL METHOD OF v_word_app 'Documents' = v_documents. "Cria um documento dentro da sessão de documentos CALL METHOD OF v_documents 'Add' = v_document. "Cria uma entrada de texto CALL METHOD OF v_word_app 'Selection' = v_selection. "Cria um paragrafo dentro da entrada de texto CALL METHOD OF v_selection 'ParagraphFormat' = v_paragraph. "Cria um font dentro da entrada de texto CALL METHOD OF v_selection 'Font' = v_font. "Insere o alinhamento do paragrafo SET PROPERTY OF v_paragraph 'Alignment' = '2' . "Right-justified "Altera os atributos da fonte SET PROPERTY OF v_font 'Name' = 'Arial' . SET PROPERTY OF v_font 'Size' = '50' . SET PROPERTY OF v_font 'Bold' = '0' . "Not bold SET PROPERTY OF v_font 'Italic' = '1' . "Italic "Insere o Texto CALL METHOD OF v_selection 'TypeText' EXPORTING #1 = 'AbapZombie.com!'. "Salva o Documento CALL METHOD OF v_document 'SaveAs' EXPORTING #1 = 'C:/example/abapzombie.ole.doc'. |
Segue também o link de um material da SAP sobre o assunto.
Abraços Zombizada









Existe algum procedimento anterior (como instalar alguma lib)?
Ao tentar ativar código recebo este erro:
The type “OLE2_OBJECT” is unknown, but there is a type with the similar name “OBJECT”.
VLW!
Qual Versão do SAP vc esta utilizando?
Acabei de fazer o teste na 6.0 e na 4.6, ambas funcionaram.
Abs,
Mauro Laranjeira
Estou logado no SRM 7.0
Valmir,
Fiz hoje o teste em um CRM 7.0 também funcionou.
Queria fazer o teste no SRM, mas não tenho acesso a nenhum.
Assim que descobrir algo respondo aqui no post.
Abs,
Mauro Laranjeira
Muito obrigado!
[]‘s
Conheci o blog através de um outro Blog que sigo regularmente, o http://www.abapinho.com e aproveito para dar vos dar os Parabéns!! Excelente Blog, com excelentes conteúdos e com uma leitura muito apelativa.
Quanto ao post, já usei ole2 para gerar ficheiros de excel, mas descobri um projecto no SDN muito bom com uma abordagem totalmente OO.
Também existe para Word, por isso deixo o link se quiseres pesquisar.
ABAP2DOCX – https://cw.sdn.sap.com/cw/groups/abap2docx
Cumprimentos
Sérgio Fraga
Portugal
Obrigado Sérgio.
Claro que irei dar uma olhada.
Abs,
Mauro Laranjeira
Mauro, trabalho com HR e utilizo bastante a integração.
Só uma coisa que colocaria a mais, é o sy-subrc depois do CREATE OBJECT, se retornar algo diferente de zero quer dizer que deu algum erro relacionado a integração e não será possível continuar..
O único problema que vejo nessa integração é em relação a performance, se voce gera um documento um pouco extenso ele demora para completar o processo e até agora não achei a solução para isso…