FoxPro/Visual FoxPro - AYUDA!!!! XLSX (2010) a DBF

 
Vista:
sin imagen de perfil

AYUDA!!!! XLSX (2010) a DBF

Publicado por Lotele (8 intervenciones) el 20/02/2017 18:41:39
Buen día,
Saludos desde Xalapa, Veracruz, México
anteriormente he trabajado con tablas de Excel (2003) y las podía exportar fácilmente a DBF y así poder actualizar registros.
Pero con la nueva versión de Office (2010) me es difícil poder realizar el proceso.

Alguien me podría auxiliar, dándome algún tip para realizar dicho proceso?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

AYUDA!!!! XLSX (2010) a DBF

Publicado por Saul (728 intervenciones) el 24/02/2017 00:04:06
Las formas serian las siguientes

Que no lo pongas como XLS si no como CSV

Por ser archivo tipo plano puede incluir muchas lineas y lo unico que tienes que hacer es

a) Seleccionar la tabla donde quieres guardar la información (tu dbf pre diseñada)
b) Seleccionar la data donde quieres guardar la información
c) APPEND FROM TuArchivo.csv TYPE CSV

Otra opción es que abras tu archivo tomando Excel como objeto, y recorrer toda la hoja
linea por linea grabando información a tu Dfb pre diseñada.


Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

AYUDA!!!! XLSX (2010) a DBF

Publicado por El Fenix (7 intervenciones) el 24/02/2017 14:13:27
Bueno a mi me paso lo mismo y tuve que crear un programita la otra forma seria exportando con un archivo prg el cual te lo dejo para que lo copies en un prg y lo corras cualquier archivo excel, me costo un poquitin pero ahi esta.....

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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
set talk off
set safe off
set near off
set exact on
clea all
clos all
clea
 
public xtabla
MyFile = GETFILE("Excel *.xls:XLS,XLSX","Importar fichero excel:","Importar",0,"Seleccione Archivo a Importar XL5")
if empty(MyFile)
	=messagebox('No ha seleccionado ningun Archivo')
	return
endif
MyNewFile = MyFile
*MyNewFile = JUSTPATH(MyFile)+"\"+JUSTFNAME(MyFile)
if right(allt(MyNewFile),4)='XLSX'
	MyNewFile = JUSTPATH(MyFile)+"\"+left(JUSTFNAME(MyFile),len(JUSTFNAME(MyFile))-1)
endif
oExcel = CreateObject("Excel.Application")
if vartype(oExcel) != "O"
  return .F.
ELSE
	oWorkbook = oExcel.Application.Workbooks.Open(MyFile)
	if val(oExcel.Version) > 7
	    oWorkbook.SaveAs(MyNewFile, 39) && xlExcel5
	else
	    oWorkbook.SaveAs(MyNewFile)
	ENDIF
	oExcel.quit() && Primer ejemplo Excel
ENDIF
oExcel = .Null. && Para evitar dejar abierta ejemplo excel ...
*************************************************************************
close table all
create table Rolo (real c(2), cambio c(10))
import from &MyNewFile type xl8
ytabla = alias()
go 1
dimension xcambia(fcount(),2)
for rolo=1 to fcount()
	ycamp = field(rolo)
	xcambia(rolo,1) = allt(ycamp)
	xcambia(rolo,2) = allt(&ycamp)
	xcambia(rolo,2) = left(chrtran(xcambia(rolo,2),' .-/',''),10)
	insert into rolo (real,cambio) values (xcambia(rolo,1),xcambia(rolo,2))
endfor
set exact on
sele rolo
cambios='cambio'
recall all
index to borr on &cambios
go top
do while !eof()
	zz=&cambios
	skip 1
	if &cambios=zz
		dele
		skip -1
		dele
		skip 1
	endif
enddo
repla cambio with iif(len(allt(cambio))<=7,allt(cambio)+allt(str(recno())),left(allt(cambio),7)+allt(str(recno()))) for dele()
recall all
go top
do while !eof()
	xreal   = allt(rolo.real)
	xcambio = allt(rolo.cambio)
	if type(xcambio) # 'N'
		alter table &ytabla rename column &xreal to &xcambio
	endif
	sele rolo
	skip 1
enddo
use in rolo
erase rolo.dbf
sele &ytabla
go 1
dele
pack
 
clea all
clos all
erase temp.bak
erase borr.idx
 
set safe on
set talk on
set near on
clea all
clos all
return
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

AYUDA!!!! XLSX (2010) a DBF

Publicado por Lotele (8 intervenciones) el 24/02/2017 17:46:47
Buen dia y Gracias El Fenix ...
copie y verifique los pasos
pero no me funciono...

EN ESTA PARTE ME MANDO ERROR (TENGO OFFICE 2010)
1
2
3
4
5
6
7
close table all
create table Rolo (real c(2), cambio c(10))
import from &MyNewFile type xl8  <<<===       <<<===    <<<===
ytabla = alias()
go 1
dimension xcambia(fcount(),2)
for rolo=1 to fcount()

Y TAMBIEN ES ESTA (ME DICE QUE NO EXISTE)
use in rolo <<<=== <<<=== <<<===
erase rolo.dbf
sele &ytabla
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

AYUDA!!!! XLSX (2010) a DBF

Publicado por Lotele (8 intervenciones) el 24/02/2017 17:41:37
Buen dia y Gracias Saul ..
ya lo intente asi, pero no me funciono,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar