- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Zero a esquerda Excel
×
Linguagem de Programação ADVPL
Perguntas Zero a esquerda Excel
- brunomilenium
- Autor do Tópico
- Desconectado
- Membro Sénior
Menos
Mais
- Postagens: 62
- Obrigados Recebidos: 0
11 anos 9 meses atrás #9937
por brunomilenium
Zero a esquerda Excel foi criado por brunomilenium
Bom dia
Estou elaborando uma rotina, que exporta de uma tabela para excel, Porem no momento que os dados sao exportados, os campos com zero a esquerda, os zeros simplesmente nao aparecem na planilha por exemplo a linha que comtem o campo "TRB->UA_NUM" campo tem um tamanho de 6 caracteres, porem no excel o registro numero 000001 exportado para o excel aparece apenas o numero 1.Segue trecho do codigo:
Static Function Exp2Excel()
// AADD(aCabExcel, {"TITULO DO CAMPO" , "TIPO", NTAMANHO, NDECIMAIS})
AADD(_aCabExcel, {"Filial" ,"C" , 02, 0})
AADD(_aCabExcel, {"Atendimento" ,"C" , 06, 0})
AADD(_aCabExcel, {"Emissao" ,"D" , 12, 0})
AADD(_aCabExcel, {"Cod. Operador" ,"C" , 06, 0})
AADD(_aCabExcel, {"Nome Operador" ,"C" , 40, 0})
AADD(_aCabExcel, {"Operacao" ,"C" , 11, 0})
AADD(_aCabExcel, {"Status/Legenda" ,"C" , 11, 0})
AADD(_aCabExcel, {"Cod. Vendedor" ,"C" , 06, 0})
AADD(_aCabExcel, {"Nome Vendedor" ,"C" , 40, 0})
AADD(_aCabExcel, {"Cod. Cliente" ,"C" , 06, 0})
AADD(_aCabExcel, {"Nome Cliente" ,"C" , 40, 0})
AADD(_aCabExcel, {"Pedido" ,"C" , 06, 0})
AADD(_aCabExcel, {"Observacao" ,"C" , 10, 0})
AADD(_aCabExcel, {"Inic. Lig." ,"C" , 08, 0})
AADD(_aCabExcel, {"Fim Lig" ,"C" , 08, 0})
AADD(_aCabExcel, {"Valor Merc." ,"N" , 16, 2})
MsgRun("Selecionando os Registros...", "Aguarde...", {|| GProcItens(_aCabExcel, _aIteExcel)})
MsgRun("Exportando os Registros para o Excel...", "Aguarde...",{||DlgToExcel({{"GETDADOS","Relatório de Produção",_aCabExcel,_aIteExcel}})})
Return()
/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍ»±±
±±ºPrograma ³GProcItensºAutor ³ Fernando Nascimento º Data ³ 11/22/10 º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºDesc. ³ Exporta relatorio para o Excel. º±±
±±º ³ º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºUso ³ Inylbra º±±
±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
*/
Static Function GProcItens(_aCabExcel, _aIteExcel)
dbSelectArea("TRB")
TRB->(dbGoTop())
While TRB->(!EoF())
AADD(_aIteExcel, { TRB->UA_FILIAL,;
TRB->UA_NUM ,;
DTOC(STOD(TRB->UA_EMISSAO)),;
TRB->UA_OPERADO,;
TRB->U7_NOME ,;
TRB->OPER, ,;
TRB->STATUS ,;
TRB->UA_VEND ,;
TRB->A3_NOME ,;
TRB->UA_CLIENTE,;
TRB->UA_NOME ,;
TRB->C5_NUM ,;
TRB->YP_TEXTO ,;
TRB->UA_INICIO ,;
TRB->UA_FIM ,;
TRB->UA_VALMERC ,})
TRB->(dbSkip())
EndDo
Return()
Estou elaborando uma rotina, que exporta de uma tabela para excel, Porem no momento que os dados sao exportados, os campos com zero a esquerda, os zeros simplesmente nao aparecem na planilha por exemplo a linha que comtem o campo "TRB->UA_NUM" campo tem um tamanho de 6 caracteres, porem no excel o registro numero 000001 exportado para o excel aparece apenas o numero 1.Segue trecho do codigo:
Static Function Exp2Excel()
// AADD(aCabExcel, {"TITULO DO CAMPO" , "TIPO", NTAMANHO, NDECIMAIS})
AADD(_aCabExcel, {"Filial" ,"C" , 02, 0})
AADD(_aCabExcel, {"Atendimento" ,"C" , 06, 0})
AADD(_aCabExcel, {"Emissao" ,"D" , 12, 0})
AADD(_aCabExcel, {"Cod. Operador" ,"C" , 06, 0})
AADD(_aCabExcel, {"Nome Operador" ,"C" , 40, 0})
AADD(_aCabExcel, {"Operacao" ,"C" , 11, 0})
AADD(_aCabExcel, {"Status/Legenda" ,"C" , 11, 0})
AADD(_aCabExcel, {"Cod. Vendedor" ,"C" , 06, 0})
AADD(_aCabExcel, {"Nome Vendedor" ,"C" , 40, 0})
AADD(_aCabExcel, {"Cod. Cliente" ,"C" , 06, 0})
AADD(_aCabExcel, {"Nome Cliente" ,"C" , 40, 0})
AADD(_aCabExcel, {"Pedido" ,"C" , 06, 0})
AADD(_aCabExcel, {"Observacao" ,"C" , 10, 0})
AADD(_aCabExcel, {"Inic. Lig." ,"C" , 08, 0})
AADD(_aCabExcel, {"Fim Lig" ,"C" , 08, 0})
AADD(_aCabExcel, {"Valor Merc." ,"N" , 16, 2})
MsgRun("Selecionando os Registros...", "Aguarde...", {|| GProcItens(_aCabExcel, _aIteExcel)})
MsgRun("Exportando os Registros para o Excel...", "Aguarde...",{||DlgToExcel({{"GETDADOS","Relatório de Produção",_aCabExcel,_aIteExcel}})})
Return()
/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍ»±±
±±ºPrograma ³GProcItensºAutor ³ Fernando Nascimento º Data ³ 11/22/10 º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºDesc. ³ Exporta relatorio para o Excel. º±±
±±º ³ º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºUso ³ Inylbra º±±
±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
*/
Static Function GProcItens(_aCabExcel, _aIteExcel)
dbSelectArea("TRB")
TRB->(dbGoTop())
While TRB->(!EoF())
AADD(_aIteExcel, { TRB->UA_FILIAL,;
TRB->UA_NUM ,;
DTOC(STOD(TRB->UA_EMISSAO)),;
TRB->UA_OPERADO,;
TRB->U7_NOME ,;
TRB->OPER, ,;
TRB->STATUS ,;
TRB->UA_VEND ,;
TRB->A3_NOME ,;
TRB->UA_CLIENTE,;
TRB->UA_NOME ,;
TRB->C5_NUM ,;
TRB->YP_TEXTO ,;
TRB->UA_INICIO ,;
TRB->UA_FIM ,;
TRB->UA_VALMERC ,})
TRB->(dbSkip())
EndDo
Return()
Por favor Acessar ou Registrar para participar da conversa.
- kanaamlrr
- Desconectado
- Membro Platina
Menos
Mais
- Postagens: 1576
- Obrigados Recebidos: 4
11 anos 9 meses atrás - 11 anos 9 meses atrás #9939
por kanaamlrr
Respondido por kanaamlrr no tópico Zero a esquerda Excel
Realize uma tratativa para que sempre que for exportar um valor com 0 à esquerda ele adicione uma aspas simples antes do valor
Por exemplo:
If Left(cTexto,1)=="0"
cTexto := "'"+cTexto
EndIf
Testa ae e posta se deu certo.
Por exemplo:
If Left(cTexto,1)=="0"
cTexto := "'"+cTexto
EndIf
Testa ae e posta se deu certo.
Ultima edição: 11 anos 9 meses atrás por kanaamlrr.
Por favor Acessar ou Registrar para participar da conversa.
- brunomilenium
- Autor do Tópico
- Desconectado
- Membro Sénior
Menos
Mais
- Postagens: 62
- Obrigados Recebidos: 0
11 anos 9 meses atrás - 11 anos 6 meses atrás #9953
por brunomilenium
Respondido por brunomilenium no tópico Zero a esquerda Excel
Bom dia
resolvi o problema da seguinte forma:
chr(160)+TRB->UA_NUM
chr(160)é da tabela ascii, o excel reconhece mas não exibe.
Obrigado a todos
Att
Bruno Evangelista de Souza
resolvi o problema da seguinte forma:
chr(160)+TRB->UA_NUM
chr(160)é da tabela ascii, o excel reconhece mas não exibe.
Obrigado a todos
Att
Bruno Evangelista de Souza
Ultima edição: 11 anos 6 meses atrás por brunomilenium.
Por favor Acessar ou Registrar para participar da conversa.
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Zero a esquerda Excel
Tempo para a criação da página:0.083 segundos