DlgToExcel - Resultado

DlgToExcel

 

Descrição

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

ParNomeTipoDescriçãoDefaultObgRef
01cOrigemCaracterConteúdo fixo definido como: “GETDADOS”X
02cTituloCaracterNome para exibição da planilhaX
03aDadosCabArrayArray contendo os nomes dos campos que serão exibidos na planilhaX
04aDadosItensArrayArray contendo as informações dos campos, de acordo com a ordem do array de cabeçalhoX

Retorno

RetornoTipoDescrição

Exemplo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#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

DlgToExcel - Resultado

DlgToExcel – Resultado

Informação Adicional

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

2 respostas
    • Universo ADVPL
      Universo ADVPL says:

      Boa noite,

      Não tem como.
      Função interna trabalha com nomes e caminhos padrões.

      Ver:
      MsDocPath / GetTempPath / CriaTrab / "DIRDOCLOC" / "DLGEXCEL"

      Att,

      Responder

Deixe uma resposta

Want to join the discussion?
Feel free to contribute!

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *