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.
Sintaxe
_ADVPL_ExportArrayToExcelCSV( < u4GLRec >, < cCSVFilePath >, < cColumns >, < nRowsCount > )
Parâmetros
Nome | Tipo | Obrigatório? | Descrição |
---|---|---|---|
u4GLRec |
| Sim | Variável 4GL do tipo ARRAY OF RECORD que contém os dados a serem exportados. |
cCSVFilePath |
| 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". 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. 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 |
| Não | Lista com o nome dos elementos do array de record 4GL que deverão ser exportados. Informe NULL para considerar exportação de todos os elementos definidos no array de record.
nomecoluna1|nomecoluna2
NULL |
nRowsCount |
| Não | Número de linhas a serem exportadas do array, considerando sempre a linha inicial como 1. Quando não informado será considerado todas as linhas. |
Retorno
Nome | Tipo | Descrição |
---|---|---|
cCSVFilePath |
| 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
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_csvFile = _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_csvFile = _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 appserver. LET l_csvFile = _ADVPL_ExportArrayToExcelCSV(ma_dados,NULL,"codigo") CALL conout("PLANILHA 3 GERADA NO ARQUIVO "||l_csvFile CLIPPED) END FUNCTION
Informações
Fontes: array.prw
Observações
Disponível a partir do pacote Logix 12.1.2311.