Visualizando dados do Protheus no Word (97 a 2010)
Agora irei postar parte do meu fonte, contendo as informações principais para executar.
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 53 54 55 56 57 58 59 60 61 62 63 64 |
#INCLUDE "PROTHEUS.CH" #INCLUDE "MSOLE.CH" User Function RCOM152() /*declaracao das variaveis e códificação*/ // Inicializa o Ole com o MS-Word BeginMsOle() If (hWord >= "0") IncProc("Processando documento...") OLE_CloseLink(hWord) //fecha o Link com o Word hWord := OLE_CreateLink() OLE_NewFile(hWord,cArquivo) If nImpress==1 OLE_SetProperty( hWord, oleWdVisible, .F. ) OLE_SetProperty( hWord, oleWdPrintBack, .T. ) Else OLE_SetProperty( hWord, oleWdVisible, .T. ) OLE_SetProperty( hWord, oleWdPrintBack, .F. ) EndIf /*continuação do fonte*/ OLE_SetDocumentVar(hWord, 'TOTAL_DE_ITENS', Str(nTotItens)) OLE_ExecuteMacro(hWord,"InserirLinhas") /*continuação do fonte*/ For I := 1 to nTotItens OLE_SetDocumentVar(hWord, "cItem"+Alltrim(Str(i)) , Alltrim(_aItem[i]) ) OLE_SetDocumentVar(hWord, "cProduto"+Alltrim(Str(i)) , Alltrim(_aCodPro[i]) ) OLE_SetDocumentVar(hWord, "cDesc"+Alltrim(Str(i)) , Alltrim(_aDesc[i])) OLE_SetDocumentVar(hWord, "cUM"+Alltrim(Str(i)) , Alltrim(_aUnd [i])) OLE_SetDocumentVar(hWord, "cQtde"+Alltrim(Str(i)) , transform(_aQtd[i],"@E 9999,999.99")) OLE_SetDocumentVar(hWord, "cUnitario"+Alltrim(Str(i)) , transform(_aPreco[i],"@E 9999,999.999")) OLE_SetDocumentVar(hWord, "cTotal"+Alltrim(Str(i)) , transform(Round(_aQtd[i]*_aPreco[i],2),"@E 9999,999.999")) OLE_SetDocumentVar(hWord, "cData"+Alltrim(Str(i)) , _aEntr[i]) Next //--Atualiza Variaveis OLE_UpDateFields(hWord) OLE_SaveFile ( hWord ) IF nImpress==1 OLE_SetProperty( hWord, '208', .F. ) OLE_PrintFile( hWord, "ALL",,, 1 ) OLE_CloseLink( hWord )//fecha o Link com o Word else Aviso("Atenção", "Alterne para o programa do Ms-Word para visualizar o documento PC" + _cNum + ".DOC ou clique no botao para fechar.", {"Fechar"}) OLE_SaveAsFile(hWord,cPath+"PC" + _cNum + ".DOC") Endif /*continuação do fonte*/ EndMsOle() OLE_CloseLink( hWord )//fecha o Link com o Word /*continuação do fonte*/ Return |
5 comentários
Olá, gostaria de saber se os fontes ainda estão disponíveis para download, pois mesmo conectada aparece como página não encontrada.
Muito Obrigada.
bom dia! Tente novamente que liberei o acesso.
[…] já foi exemplificado no artigo https://blogadvpl.com/visualizando-dados-do-protheus-no-word-97-a-2010/, irei agora mostrar um exemplo dentro de um contrato (sem uso de […]
Bom dia!
Gostaria de saber se poderia disponibilizar os modelos Word, pois está dando página não encontrada.
Em tempo: Parabéns pelo post.
Grato,
Bom dia!
Obrigado!!!!
Arquivos liberados