Pasar DBF a EXCEL "SOLUCIONADO"

Post Reply
remtec
Posts: 719
Joined: Fri May 12, 2017 2:50 pm

Pasar DBF a EXCEL "SOLUCIONADO"

Post by remtec »

Hola Amigos.

Necesito en forma urgente pasar completamente una Dbf a Excel, no se requiere ninguna exigencia especial, debe pasar los mismo campo y datos.

El requisito es hacerlo para Excel de Office 2010.

1. FW_DbfToExcel() = No funciona en Excel 2010 con campos Date()

2. ToExcel() = No uso Xbrowse.

En espera de su urgente ayuda, les saluda,

Antonio.
Last edited by remtec on Thu Mar 18, 2021 12:25 pm, edited 1 time in total.
FWH 22.10 - HARBOUR - PELLES C
User avatar
karinha
Posts: 7910
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil
Been thanked: 3 times
Contact:

Re: Pasar DBF a EXCEL

Post by karinha »

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
remtec
Posts: 719
Joined: Fri May 12, 2017 2:50 pm

Re: Pasar DBF a EXCEL

Post by remtec »

Hola Karinha

Muchas gracias por responder.

De este link, aplique lo que explico, al igual que explique en un link anterior sobre el mismo problema.

FW_DbfToExcel(), cumpliria con mi necesidad, pero no convierte correctamente los campos fecha en Excel 2010.

Ejemplo: Fecha "15/01/2021", en excel Office 2010 lo muestra con el valor "44211".

Saludos,

Antonio
FWH 22.10 - HARBOUR - PELLES C
User avatar
karinha
Posts: 7910
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil
Been thanked: 3 times
Contact:

Re: Pasar DBF a EXCEL

Post by karinha »

Muestra tú código final, no tengo excel 2010 para testes.

Saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
remtec
Posts: 719
Joined: Fri May 12, 2017 2:50 pm

Re: Pasar DBF a EXCEL

Post by remtec »

Muchas gracias Karinha.

Este simple codigo, abre la dbf y genera la planilla, cuando se abre excel con la planilla, esta tiene el campo fecha con el valor que indico arriba.

Ahora si esta misma dbf la abro directo desde excel, el campo fecha se muestra correctamente, lo que indica que es algo en la conversión que realiza FW_DbfToExcel().

Saludos

Antonio

Code: Select all | Expand



      MsgRun(" GENERANDO PLANILLA EXCEL ", "Espere...")
     
      Sele 1
      Use Ingreso Exclusive
         
     Ingreso->( FW_DbfToExcel())

     MsgRun(" ABRIENDO Y CARGANDO PLANILLA EXCEL ", "Espere...")

 
FWH 22.10 - HARBOUR - PELLES C
User avatar
karinha
Posts: 7910
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil
Been thanked: 3 times
Contact:

Re: Pasar DBF a EXCEL

Post by karinha »

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
Armando
Posts: 3259
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Been thanked: 1 time
Contact:

Re: Pasar DBF a EXCEL

Post by Armando »

Amigo:

La rápida, abre la DBF con Excel y listo.

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
nageswaragunupudi
Posts: 10701
Joined: Sun Nov 19, 2006 5:22 am
Location: India
Been thanked: 3 times
Contact:

Re: Pasar DBF a EXCEL

Post by nageswaragunupudi »

Code: Select all | Expand

  USE CUSTOMER NEW VIA "DBFCDX"
   FW_DbfToExcel( "FIRST,CITY,AGE,HIREDATE,SALARY", , { || RECNO() < 6 } )
   return nil


Image
Regards

G. N. Rao.
Hyderabad, India
remtec
Posts: 719
Joined: Fri May 12, 2017 2:50 pm

Re: Pasar DBF a EXCEL

Post by remtec »

nageswaragunupudi wrote:

Code: Select all | Expand

  USE CUSTOMER NEW VIA "DBFCDX"
   FW_DbfToExcel( "FIRST,CITY,AGE,HIREDATE,SALARY", , { || RECNO() < 6 } )
   return nil


Image


Amigo, muchas gracias por responder.

Aplique lo que me indicas, pero en Office 2010, pero para la fecha 15/01/2021 la cambia por 44211 y me entrega esto:
Fol_ing Fec_Ate Det_Pac
1984421 44211 SONIA PUELMA XXXXXX
1984432 44211 ISAAC IBAÑEZ RAMA
1984443 44211 EDGAR BARRA VURGOS
1984454 44211 ALBERTINA ORDENES VELIZ

En Office 365 funciona muy bien, pero mi cliente funciona con Office 2010.

Muchos saludos y muchas gracias.
Antonio

Code: Select all | Expand


Sele Ingreso
FW_DbfToExcel( "Fol_ing,Fec_Ate,Det_Pac", , { || RECNO() < 100} )
 
Last edited by remtec on Wed Mar 17, 2021 2:12 pm, edited 2 times in total.
FWH 22.10 - HARBOUR - PELLES C
remtec
Posts: 719
Joined: Fri May 12, 2017 2:50 pm

Re: Pasar DBF a EXCEL

Post by remtec »

Armando wrote:Amigo:

La rápida, abre la DBF con Excel y listo.

Saludos


Hola Armando, como estas.

Seria lo ideal para si el cliente lo quisiera asi, pero su requerimiento es que desde el boton "Genera Excel", se abra la planilla en su excel, no quiso que se guardara en el disco, la planilla desea hacer algunos controles y comparaciones con otras.

Muchas gracias y muchos saludos.

Antonio
FWH 22.10 - HARBOUR - PELLES C
remtec
Posts: 719
Joined: Fri May 12, 2017 2:50 pm

Re: Pasar DBF a EXCEL

Post by remtec »

Hola Amigos

No logro dar con la solución, usando Excel 2010.

He probado con:

Ingreso->(FW_DbfToExcel( ,,,,,, cSaveTo2 )) <--- Grando en Disco
o
Ingreso->( FW_DbfToExcel()) <--- Abriendo planilla directo a excel.

Incluso, pase la fecha como Character, para ver si cambiaba y nada.

Ambas opciones el campo fecha, no registra como un numero, como lo indico mas arriba.

Alguna idea para solución.

Saludos.

Antonio
FWH 22.10 - HARBOUR - PELLES C
User avatar
jvtecheto
Posts: 603
Joined: Mon Mar 04, 2013 4:32 pm
Location: Spain

Re: Pasar DBF a EXCEL

Post by jvtecheto »


Aplique lo que me indicas, pero en Office 2010, pero para la fecha 15/01/2021 la cambia por 44211 y me entrega esto:
Fol_ing Fec_Ate Det_Pac
1984421 44211 SONIA PUELMA XXXXXX
1984432 44211 ISAAC IBAÑEZ RAMA
1984443 44211 EDGAR BARRA VURGOS
1984454 44211 ALBERTINA ORDENES VELIZ



Una pregunta , si esta fecha(44211) intentas formatearla manualmente como fecha en otro formato, te lo cambiar a 15/01/2021 o tampoco ?

Saludos

Jose.
Fwh 24.07 64 bits + Harbour 64 bits 3.2dev(r2407221137) + MSVC64
remtec
Posts: 719
Joined: Fri May 12, 2017 2:50 pm

Re: Pasar DBF a EXCEL

Post by remtec »

Hola Jose.

Muchas gracias por responder.

Revise el tipo de campo que viene el la planilla:

Campo Fecha en la base de datos: "Fec_Ate" , "D",08,0

Campo Fecha en planilla generada: Numero

Pero revisando todos los campos de la planilla, son tipo Número.

Muchos Saludos

Antonio

Estructura de la Base de datos completa:

Code: Select all | Expand


aStru :={{"Fol_Ing" , "N",10,0 },;
                             {"Fec_Ate" , "D",08,0 },;
                             {"Nom_Pac" , "C",35,0 },;
                             {"Tip_Ate" , "C",4,0},;      
                             {"Cod_Esp" , "C",4,0},;      
                             {"Med_Tra" , "C",4,0 },;    
                             {"Tip_Pag" , "C",4,0 },;    
                             {"Val_Bon" , "N",10,0 },;    
                             {"Rut_Afi" , "C",12,0 },;    
                             {"Fol_Caj" , "N",10,0 },;    
                             {"Num_Bon" , "C",15,0 }}

 
Last edited by remtec on Thu Mar 18, 2021 12:21 pm, edited 1 time in total.
FWH 22.10 - HARBOUR - PELLES C
User avatar
nageswaragunupudi
Posts: 10701
Joined: Sun Nov 19, 2006 5:22 am
Location: India
Been thanked: 3 times
Contact:

Re: Pasar DBF a EXCEL

Post by nageswaragunupudi »

Please try:

Code: Select all | Expand

oSheet := FW_DbfToExcel( "Fol_ing,Fec_Ate,Det_Pac", , { || RECNO() < 100} )
oSheet:Columns( 2 ):NumberFormat := "dd/mm/yyyy"
 

Also, please let us know your version of FWH.
Regards

G. N. Rao.
Hyderabad, India
remtec
Posts: 719
Joined: Fri May 12, 2017 2:50 pm

Re: Pasar DBF a EXCEL

Post by remtec »

nageswaragunupudi wrote:Please try:

Code: Select all | Expand

oSheet := FW_DbfToExcel( "Fol_ing,Fec_Ate,Det_Pac", , { || RECNO() < 100} )
oSheet:Columns( 2 ):NumberFormat := "dd/mm/yyyy"
 

Also, please let us know your version of FWH.


Mr Roa,

Muy buen dia.

Muchas gracias por responder, como siempre Maestro.

Funciono Perfecto, ahora podre dormir tranquilo.

Muchos Saludos.
Antonio
FWH 22.10 - HARBOUR - PELLES C
Post Reply