Páginas filhas
  • _ADVPL_exportArrayToExcelCSV

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Exportar os dados contidos em uma variável ARRAY OF RECORD para uma planilha no formato CSV, onde os dados são exportados linha a linha e suas informações ficam separadas por ";" (ponto vírgula) em cada linha do arquivo.


Informações
iconfalse
(informação) A extensão do arquivo de saída será .CSV no formato que pode ser aberto para visualização com ferramenta Excel ou outra ferramenta de

...

edição/visualização de planilhas neste formato CSV


Informações
iconfalse
ATENÇÃO! O formato CSV pode apresentar problemas para valores numéricos que contenham valores decimais, pois o separador de casas decimais será vírgula ou ponto, conforme estiver configurado a variável de ambiente DBMONEY para o AppServer.

Sintaxe

...

Bloco de código
_ADVPL_ExportArrayToExcelCSV( < u4GLRec >, < cCSVFilePath >, < cColumns >, < nRowsCount > )

Parâmetros

...

Nome

Tipo

Obrigatório?

Descrição

u4GLRec

ARRAY OF RECORD

Sim

Variável 4GL do tipo ARRAY OF RECORD que contém os dados a serem exportados.

cCSVFilePath

CHAR

Não

Caminho completo do arquivo a ser gravado no servidor. Se for enviado nome de arquivo sem extensão, irá assumir extensão ".csv".

(aviso)  Se não for enviado um caminho de diretório, o valor do parâmetro deverá ser NULL. Neste caso a função irá considerar automaticamente a pasta de destino como uma pasta temporária do AppServer.

(aviso)  Se for informado um caminho de diretório inválido ou não existente no servidor, a função será interrompida, retornando valor NULL, indicando que houve algum problema na extração dos dados.

cColumns

CHAR

Não

Lista com o nome dos elementos do array de record 4GL que deverão ser exportados. 

(informação) Informe NULL para considerar exportação de todos os elementos

definidos

 definidos no array de record.


FORMATO para cColumns:    

    • lista dos elementos do array de record que serão extraidos, separados por "|" (pipe)

nomecoluna1|nomecoluna2

    • Irá assumir automaticamente todos os elementos do array de record

NULL 

nRowsCount

INTEGER

Não

Número de linhas a serem exportadas do array, considerando sempre a linha inicial como 1.

(informação) Quando não informado será considerado todas as linhas.

Retorno

...

Nome

Tipo

Descrição

cCSVFilePath

CHAR

Caminho completo do arquivo com formato CSV gerado no servidor. 

Caso tenha ocorrido qualquer tipo de erro durante a geração do arquivo ou extração dos dados do array, o retorno desta função será NULL.

Exemplo

...

Bloco de código
languageruby
themeConfluence
linenumberstrue
DEFINE ma_dados ARRAY[3] OF RECORD
                            codigo SMALLINT,
                            texto  CHAR(10)
                            END RECORD

#-------------------------------------------#
 FUNCTION ExportArrayToExcelCSV_test()
#-------------------------------------------#
  DEFINE l_csvFile CHAR(300)

  LET ma_dados[1].codigo = 49
  LET ma_dados[1].texto  = 'linha 01'

  LET ma_dados[2].codigo = 27
  LET ma_dados[2].texto  = 'linha 03'

  LET ma_dados[3].codigo = 5
  LET ma_dados[3].texto  = 'linha 02'     

  #Exportar toda grid para um arquivo CSV automatico no appserver
  LET l_xmlFilecsvFile = _ADVPL_ExportArrayToExcelCSV(ma_dados)
  CALL conout("PLANILHA 1 GERADA NO ARQUIVO "||l_csvFile CLIPPED)

  #Exportar todos dados até a linha 2 da grid para um arquivo CSV automatico no appserver 
  LET l_xmlFilecsvFile = _ADVPL_ExportArrayToExcelCSV(ma_dados,NULL,NULL,2)
  CALL conout("PLANILHA 2 GERADA NO ARQUIVO "||l_csvFile CLIPPED)
 
  #Exportar todas as linhas, apenas o valor da coluna 1 para um arquivo CSV de nome automático no appseverappserver.
  LET l_xmlFilecsvFile = _ADVPL_ExportArrayToExcelCSV(ma_dados,NULL,"codigo")
  CALL conout("PLANILHA 3 GERADA NO ARQUIVO "||l_csvFile CLIPPED)
END FUNCTION

...