Observação
A classe FWMsExcelXlsx utiliza a memória física do computador para a criação do arquivo, armazenando os valores para, ao final do processamento, criar o arquivo. Neste método de criação existe maior variação de uso dos dados antes de sua criação, mas com efeitos de maior consumo de memória.
Métodos
Esta classe só está disponível em binários 17.3.0.0 e superiores
O recurso depende primariamente da printer.exe
ter a versão igual ou superior a 2.1.0
. Caso seja utilizada versão anterior será lançada uma exceção
Classe disponível na lib com label igual ou superior a 20201009
.
oExcel := FwMsExcelXlsx():New()
lRet := oExcel:IsWorkSheet("WorkSheet1")
oExcel:AddworkSheet("WorkSheet1")
lRet := oExcel:IsWorkSheet("WorkSheet1")
oExcel:AddTable ("WorkSheet1","Table1")
oExcel:AddColumn("WorkSheet1","Table1","Col1",1,1,.F., "999.9")
oExcel:AddColumn("WorkSheet1","Table1","Col2",2,2,.F., "999.99")
oExcel:AddColumn("WorkSheet1","Table1","Col3",3,3,.F., "999.999")
oExcel:AddColumn("WorkSheet1","Table1","Col4",1,1,.T., "999.9999")
oExcel:AddColumn("WorkSheet1","Table1","Col5",1,1,.T., "999.99999")
oExcel:AddColumn("WorkSheet1","Table1","Col6",1,1,.T., "999")
oExcel:AddRow("WorkSheet1","Table1",{11.1,12.11,13.111,14.1111, 14.12345, 12.35})
oExcel:AddRow("WorkSheet1","Table1",{21,22,23,24})
oExcel:AddRow("WorkSheet1","Table1",{31,32,33,34})
oExcel:AddRow("WorkSheet1","Table1",{41,42,43,44})
oExcel:SetFont("arial")
oExcel:SetFontSize(20)
oExcel:SetItalic(.T.)
oExcel:SetBold(.T.)
oExcel:SetUnderline(.T.)
oExcel:AddworkSheet("WorkSheet2")
oExcel:AddTable("WorkSheet2","Table1")
oExcel:AddColumn("WorkSheet2","Table1","Col1",1, 1)
oExcel:AddColumn("WorkSheet2","Table1","Col2",2, 2)
oExcel:AddColumn("WorkSheet2","Table1","Col3",3, 3)
oExcel:AddColumn("WorkSheet2","Table1","Col4",1, 4)
oExcel:AddColumn("WorkSheet2","Table1","Col5",1)
oExcel:AddRow("WorkSheet2","Table1",{"11",12,13,stod("20121212"), .F.})
oExcel:AddRow("WorkSheet2","Table1",{"21",22,23,stod("20121212"), .T.})
oExcel:AddRow("WorkSheet2","Table1",{"31",32,33,stod("20121212"), .F.})
oExcel:AddRow("WorkSheet2","Table1",{"41",42,43,stod("20121212"), .T.})
oExcel:AddRow("WorkSheet2","Table1",{"51",52,53,stod("20121212"), .F.})
oExcel:Activate()
oExcel:GetXMLFile("TESTE.xlsx")
oExcel:DeActivate()
Nome | Tipo | Descrição | Default | Obrigatório | Referência | |
cWorkSheet | Caracteres | Nome da planilha que será adicionada | X |
Nome | Tipo | Descrição | Default | Obrigatório | Referência | |
cWorkSheet | Caracteres | Nome da planilha | X | |||
cTable | Caracteres | Titulo da tabela que será adicionada | X | |||
lPrintHead | Logico | Determina se imprime ou não o cabeçalho da tabela na primeira linha da tabela. (disponível a parti da lib 20220613) | .T. |
Nome | Tipo | Descrição | Default | Obrigatório | Referência | |
cWorkSheet | Caracteres | Nome da planilha | X | |||
cTable | Caracteres | Nome da planilha | X | |||
cColumn | Caracteres | Titulo da tabela que será adicionada | X | |||
nAlign | Numérico | Alinhamento da coluna ( 1-Left,2-Center,3-Right ) | 1 | |||
nFormat | Numérico | Codigo de formatação ( 1-General,2-Number,3-Monetário,4-DateTime ) | 1 | |||
lTotal | Lógico | Indica se a coluna deve ser totalizada | .F. | |||
cPicture | Caracteres | Mascara de picture a ser aplicada. Somente para campos numéricos | "" |
Nome | Tipo | Descrição | Default | Obrigatório | Referência | |
cWorkSheet | Caracteres | Nome da planilha | X | |||
cTable | Caracteres | Nome da planilha | X | |||
aRow | Array of Records | Array com as informações da linha da linha | X |
Nome | Tipo | Descrição | Default | Obrigatório | Referência | |
cFile | Caracteres | Nome do arquivo fisico | X |
Nome | Tipo | Descrição | Default | Obrigatório | Referência | |
cWorkSheet | Caracteres | Nome | X |
Nome | Tipo | Descrição | Default | Obrigatório | Referência | |
nFontSize | Numérico | Tamanho | X |
Nome | Tipo | Descrição | Default | Obrigatório | Referência | |
cFont | Caracteres | Nome da Fonte | X |
Nome | Tipo | Descrição | Default | Obrigatório | Referência | |
lItalic | Lógico | .T. indica que sim | X |
Nome | Tipo | Descrição | Default | Obrigatório | Referência | |
lBold | Lógico | .T. indica que sim | X |
Nome | Tipo | Descrição | Default | Obrigatório | Referência | |
lUnderline | Lógico | .T. indica que sim | X |
SetWriteinFile
Sintaxe
FwMsExcelXlsx():SetWriteinFile(< lWriteinFile >)-> NIL
Descrição
Informa se a escrita será realizada diretamente em arquivo, por padrão essa opção está desativada.
Caso essa opção seja utilizada a geração da planilha não mais irá consumir memória ram do servidor
Cada addRow no object já efetuará o flush dos dados no arquivo que está sendo gerado.
Isso torna a geração do arquivo procedural, de forma que o addrow sempre irá adicionar linhas na ultima tabela adicionada.
não será possível adicionar linhas em uma tabela que tenha sido criada antes da ultima tabela.
Parâmetros
Nome | Tipo | Descrição | Default | Obrigatório | Referência | |
lWriteinFile | Lógico | .T. indica que irá salvar direto no arquivo | X |
obs. Método disponível a partir da lib 20220725