Usina BRAdvPL Guia
Entrar
← Todos os tópicos
CLASSEEm revisão

FwPrinterXlsx

FwPrinterXlsx():New([lDelBase])

Gera XLSX por comandos intermediários enviados à printer.exe.

FwPrinterXlsxAdvPL
01 · VISÃO GERAL

Visão geral

Requer printer.exe 2.1.0 ou superior no cliente e servidor, LIB 20201009 e release 12.1.23 ou superiores. Activate prepara o arquivo .rel; AddSheet cria a aba e SetText escreve a célula. toXlsx é documentado com retorno NIL: não tratar seu resultado como confirmação lógica. O exemplo prepara um bloco para um caminho de teste exclusivo fornecido pelo chamador; o bloco não é executado automaticamente. (Fontes: refs. 1–1.)

02 · SINTAXE

Sintaxe

FwPrinterXlsx():New([lDelBase])

Métodos

ActivatePrepara arquivo base.o:Activate(cFile, [oFile])
AddSheetAdiciona aba obrigatória.o:AddSheet(cSheetName)
SetTextEscreve texto em célula.o:SetText(nRow,nCol,cValue)
toXlsxSolicita geração após os comandos.o:toXlsx() -> NIL
DeActivate / DestroyLibera elementos ativados e recursos.o:DeActivate() / o:Destroy()
03 · EXEMPLO PRÁTICO

Exemplo comentado

#Include "Protheus.ch"

User Function Ed447()
    Local bGerar := {|cRel| XlsxEd(cRel)}
    // O chamador deve fornecer caminho de teste novo e autorizado.
    ConOut(ValType(bGerar))
Return Nil

Static Function XlsxEd(cRel)
    Local oXlsx := FwPrinterXlsx():New()
    Local lOk := .F.
    If !File(cRel)
        If oXlsx:Activate(cRel)
            lOk := oXlsx:AddSheet("ED01")
            If lOk
                lOk := oXlsx:SetText(1,1,"Revisao")
            EndIf
            If lOk
                oXlsx:toXlsx()
            EndIf
            oXlsx:DeActivate()
        EndIf
    EndIf
    oXlsx:Destroy()
    // lOk refere-se aos comandos, nao a validacao do XLSX final.
Return lOk
Resultado esperado

Exibe B e prepara a geração; ao chamar o bloco, validar o arquivo final separadamente. Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.

BOAS PRÁTICAS
  • Não reutilizar nomes concorrentes. File é uma checagem preliminar, não reserva atômica. GetStatusPrinter não comprova sucesso da geração.
  • Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.

Conteúdos relacionados

REFERÊNCIAS
  1. TOTVS. FwPrinterXlsx. TDN. Consulta em 2026-10-27.
Situação
Em revisão
Página criada em
Última revisão em
Idioma original
Português
Revisão
Usina.BR
0 comentário(s) aprovado(s)

Comentários

Ainda não há comentários aprovados.

Entre com Google ou Microsoft para comentar.

Powered by Usina Docs · Alpha