Descrição
DlgToExcel - Realiza a exportação das informações do ambiente Protheus em formato de arrays para uma planilha do Microsoft Excel.
|
Sintaxe
| DlgToExcel( <cOrigem>, <cTitulo>, <aDadosCab>, <aDadosItens> ) |
Parâmetros
| Par |
Nome |
Tipo |
Descrição |
Default |
Obg |
Ref |
01
|
cOrigem |
Caracter |
Conteúdo fixo definido como: “GETDADOS |
|
X |
|
| 02 |
cTitulo |
Caracter |
Nome para exibição da planilha |
|
X |
|
| 03 |
aDadosCab |
Array |
Array contendo os nomes dos campos que serão exibidos na planilha |
|
X |
|
| 04 |
aDadosItens |
Array |
Array contendo as informações dos campos, de acordo com a ordem do array de cabeçalho . |
|
X |
|
Retorno
Exemplo
#INCLUDE "TOTVS.CH"
User Function DlgToExcel()
Local aCabec := {}
Local aItens := {}
aAdd(aCabec, {"A1_FILIAL" ,"C", 02, 00} )
aAdd(aCabec, {"A1_COD" ,"C", 06, 00} )
aAdd(aCabec, {"A1_LOJA" ,"C", 02, 00} )
aAdd(aCabec, {"A1_NOME" ,"C", 40, 00} )
MsgRun("Favor Aguardar.....", "Selecionando os Registros", {|| LoadInfo( aCabec, aItens ) } )
MsgRun("Favor Aguardar.....", "Exportando os Registros para o Excel", {|| DlgToExcel({{"GETDADOS", "Exportação", aCabec,aItens } } ) } )
Return( Nil )
Static Function LoadInfo( aCabec, aItens )
Local nX := 0
Local aItem := {}
dbSelectArea("SA1")
Do While SA1->( !EOF() )
aItem := Array( Len(aCabec) )
For nX := 1 to Len(aCabec)
If aCabec[nX][2] == "C"
aItem[nX] := Chr(160) + SA1->&(aCabec[nX,01])
Else
aItem[nX] := SA1->&(aCabec[nX,01])
Endif
Next nX
aAdd( aItens, aItem )
SA1->( dbSkip() )
EndDo
Return( Nil )
Resultado
Informações adicionais
|
Na exportação das informações para o Microsoft Excel deve-se atentar para as
colunas que possuírem informações alfanuméricas mas que contém apenas
números.
Para que estas colunas sejam exibidas corretamente deve ser
acrescentado um caracter especial no início da string de forma que o Microsoft
Excel as reconheça como texto e não como numéricas
|
cOrigem
|
CABECALHO
|
|
ENCHOICE
|
|
GETDADOS
|
|
ARRAY
|
|
GETDB
|
|
TABELA
|
Gostou? Compartilhe com seus amigos e deixe um comentário! 😎