Foros Néfele 4 Harbour › Foros › Dudas › Acceder a un archivo subido
Etiquetado: Excel
- Este debate tiene 46 respuestas, 6 mensajes y ha sido actualizado por última vez el 6 meses, 3 semanas por dmillas. This post has been viewed 1698 times
-
AutorEntradas
-
-
24-09-2020 a las 17:10 #757XeviParticipante
Estoy intentando subir un archivo con WFileOpenDlg, y veo que lo sube y aloja en la carpeta cgi-bin/tmp
Bien hasta ahí, pero ¿como accedo a ese fichero.???He subido un fichero excel, y lo veo correctamente en esa carpeta, ahora bien intento de ir a "abrirlo" y no me deja...
12345678910111213141516171819...TRYoExcel := GetActiveObject( "Excel.Application" )CATCHTRYoExcel := CreateObject( "Excel.Application" )CATCHcError := "ERROR! Excel not avialable. [" + Ole2TxtError()+ "]"oExcel := NILENDENDTRY* oExcel:WorkBooks():Open( "C:/Apache24/cgi-bin/tmp/" + oCGI:GetCgiFile("fitxerxls") )* oExcel:WorkBooks():Open( "/tmp/" + oCGI:GetCgiFile("fitxerxls") )oExcel:WorkBooks():Open( "/cgi-bin/tmp/" + oCGI:GetCgiFile("fitxerxls") )//no funciona ni poniendo en NOMBRE del temporal...//oExcel:WorkBooks():Open( "/tmp/" + "tmp~202009247777438513.xlsx" )...Error en Excel... DISP_E_EXCEPTION
Un Saludo,
Xevi
- Este debate fue modificado 4 años, 1 mes por Alfredo Sanz.
-
24-09-2020 a las 20:18 #759quimParticipante
Xevi
Estás intentando que el CGI te abra un excel ?
El CGI sólo puede devolver 'datos', es decir, html, json, xml,...
Saludos
Quim
-
24-09-2020 a las 21:33 #761XeviParticipante
Quim,
Estoy tratando de "subir" primero un archivo y una vez alojado en el servidor, ya que lo aloja en la carpeta cgi-bin/tmp, procesarlo-abrirlo-leerlo... no se si hago alguna "estupidez", pero imagina una imagen jpg,bmp... qué harias con el fichero subido-recibido al servidor, mostrar-procesar-ver... pues de eso se trata que podamos subir archivos al server, no???
Una vez leido el arcchivo SI que voy a devolver datos y mostrarlos en una página, pero necesito poder "procesar-tratar" los datos de ese archivo subido
De hecho, lo planteo así, porque las pruebas que hice con mod_harbour, funcionaba de esta manera (igualita que con harbour).
Se trata de subir, leer-tratar datos y devolver datos para mostrar en una página.No pretendo abrir Excel, sinó que aprovechar el ActiveObject dentro de las posibilidades de abrir documento, leer/modificar celdas, capturar datos y finalmente mostrar datos en una página web.
Gracias por vuestro tiempo.
Un Saludo,
Xevi.
-
24-09-2020 a las 22:10 #765XeviParticipante
Sigo con este tema...
Bien, por lo visto, acceder con FOpen(), MemoRead()...
FOpen( "C:\Apache24\cgi-bin\tmp/" + oCGI:GetCgiFile("fitxerxls") )
MemoRead( "C:\Apache24\cgi-bin\tmp/" + oCGI:GetCgiFile("fitxerxls") )
No da problemas y puedo abrir el archivo...
ahora bien, no se que puede ocurrir, cuando
oExcel := GetActiveObject( "Excel.Application" )
no se queja, que no pueda hacer un
oExcel:WorkBooks():Open( "C:/Apache24/cgi-bin/tmp/" + oCGI:GetCgiFile("fitxerxls") )Pues no se como poder leer archivos excel si no tiro de ese componente.
Para crear un archivo excel, tengo la clase TFileXls de Ramon Avendaño, pero no para lectura/modificación de un excel...Un Saludo,
Xevi
-
24-09-2020 a las 22:24 #766XeviParticipante
Por más vueltas que le doy, no logro entender...
Realmente, lo que está funcionando es un exe Xailer+harbour+Mingw que lo que hace es procesar datos y crear un archivo html para mostrar datosBien, o sea que TODO lo que no es "visual" debe de funcionar igual, entendí.
12345678910111213141516171819202122aFulls := {}cFileXls := "C:/Apache24/cgi-bin/tmp/" + oCGI:GetCgiFile("fitxerxls")TRYoExcel := GetActiveObject( "Excel.Application" )CATCHTRYoExcel := CreateObject( "Excel.Application" )CATCHcError := "ERROR! Excel not avialable."ENDENDTRYoExcel:WorkBooks():Open( cFileXls )For n:=1 TO oExcel:Sheets:CountAAdd( aFulls, oExcel:Sheets(n):Name )NextoExcel:ActiveWorkbook:Close( .F. )CATCHcError := "ERROR! Llibres/Sheets"ENDLo único que estoy haciendo, es en un momento dado, abrir un documento, no muestro NADA, miro que "hojas" tiene ese archivo excel para cargarlos en un array, cerrar el documento y luego ese array es el que enviaré a mostrar en una página.
Simplemente, de momento eso. Pues no me funciona.
Un Saludo,
Xevi.
-
25-09-2020 a las 00:17 #768Alfredo SanzSuperadministrador
Xevi:
Prueba a copiarlo a otra carpeta fuera de apache24. En algunos casos hemos tenido problemas con los permisos que otorga apache dentro de cgi-bin.
Recuerdo que algún compañero nos ha comentado que ha leído correctamente, creo que ficheros word.
Mañana se lo comento y que nos cuente.
-
25-09-2020 a las 00:42 #772Alfredo SanzSuperadministrador
-
25-09-2020 a las 09:29 #778XeviParticipante
Pues alguna cosa ocurre con la versión que tengo de Néfele!!!
En un proyecxto de Xailer...
123456789101112131415161718192021222324METHOD Button1Click( oSender ) CLASS TForm1Local oExcel, nFor, cFileXLS := "C:\prova\prova.xlsx", oHoja, nMaxTRYoExcel := GetActiveObject( "Excel.Application" )CATCHTRYoExcel := CreateObject( "Excel.Application" )CATCHLogDebug( "ERROR! Excel not avialable. [" + Ole2TxtError()+ "]" )ENDENDoExcel:WorkBooks():Open(cFileXLS)oHoja := oExcel:ActiveSheet()nMax := oHoja:UsedRange:Rows:Count()For nFor := 1 TO nMaxLogDebug( oHoja:Cells( nFor,1 ):Value )NextoExcel:ActiveWorkbook:Close( .F. )oExcel := NILRETURN NilEstá funcionando correctamente y visualizo los valores de las celdas 1 de la hoja1
Ahora bien, en un proyecto NéfeleXailer
123456789101112131415161718192021222324PROCEDURE pruebaXLS()Local oExcel, nFor, cFileXLS := "C:\prova\prova.xlsx", oHoja, nMaxTRYoExcel := GetActiveObject( "Excel.Application" )CATCHTRYoExcel := CreateObject( "Excel.Application" )CATCHoCGI:Console( "ERROR! Excel not avialable. [" + Ole2TxtError()+ "]" )ENDENDoExcel:WorkBooks():Open(cFileXLS)oHoja := oExcel:ActiveSheet()nMax := oHoja:UsedRange:Rows:Count()For nFor := 1 TO nMaxoCGI:Console( oHoja:Cells( nFor,3 ):Value )NextoExcel:ActiveWorkbook:Close( .F. )oExcel := NILRETURNDa error al legar a Open()
1234567891011121314151617Error en /provanefeleEl siguiente error ha ocurrido: Microsoft Excel no puede obtener acceso al archivo 'C:\prova\prova.xlsx'. Puede haber varios motivos: � El nombre o la ruta del archivo no existen. � Otro programa est� usando el archivo. � El libro que est� intentando guardar tiene el mismo nombre que otro libro que est� abierto en estos momentos. (0x800A03EC)OPENWINOLE 1007Arguments: [ 1] = Tipo: C Valor: C:\prova\prova.xlsxError code: -2147352567Llamado desde WIN_OLEAUTO:OPEN(0)Llamado desde PRUEBAXLS(207)Llamado desde (b)TCGI(37)Llamado desde TCGI:PRUEBAXLS(0)Llamado desde __OBJSENDMSG(0)Llamado desde TCGI:RUN(1190)Llamado desde CGI_INIT(22)Llamado desde MAIN(16)Por favor, anote lo que estaba haciendo cuando este problema ocurrio, para poder identificarlo y corregirlo, gracias.Gracias por vuestro tiempo.
Un Saludo,
Xevi.
-
25-09-2020 a las 15:25 #786Pedro AmaroSuperadministrador
Buenas tardes Xevi;
No se si será este el problema que tienes, pero se parece mucho a lo que tuvimos cuando implementamos ADO en Néfele, y al uso de otros servicios OLE, el hecho de que Fredy no tenga problema me da pistas de que puede ser así.
Añade en httpd.conf las siguientes lineas y reinicia el Apache
123456SetEnv ProgramFiles "C:\Program Files"SetEnv "ProgramFiles(x86)" "C:\Program Files (x86)"SetEnv ProgramFilesW6432 "C:\Program Files"SetEnv CommonProgramFiles "C:\Program Files\Common Files"SetEnv "CommonProgramFiles(x86)" "C:\Program Files (x86)\Common Files"SetEnv CommonProgramFilesW6432 "C:\Program Files\Common Files"Solemos ponerlo justo debajo de
123Define SRVROOT "c:/Apache24"ServerRoot "${SRVROOT}"El problema parece ser porque OLE no consigue saber donde encontrar sus componentes cuando es ejecutado desde Apache, no sabemos si es por que es un servicio.
Pruebalo y nos cuentas
-
25-09-2020 a las 16:44 #787XeviParticipante
Resulta, que mirando el httpd.conf, esas líneas ya estan en el fichero...
supongo que al instalar NefeleWizard se encarga...
12345678910Define SRVROOT "/Apache24"ServerRoot "${SRVROOT}"# Para que funcione el OLE dentro de Apache y con él ADO y el acceso a Microsoft SQLServerSetEnv ProgramFiles "C:\Program Files"SetEnv "ProgramFiles(x86)" "C:\Program Files (x86)"SetEnv ProgramFilesW6432 "C:\Program Files"SetEnv CommonProgramFiles "C:\Program Files\Common Files"SetEnv "CommonProgramFiles(x86)" "C:\Program Files (x86)\Common Files"SetEnv CommonProgramFilesW6432 "C:\Program Files\Common Files"Así es como lo tengo... y no me funciona.
Gracias por vuestro tiempo.
Estaria de bien que lo probara algun otro usuario...
Yo lo voy a probar en otra PC, a ver que tal.
(editado)... probado en una segunda PC, y tampoco me funciona, el mismo error.
De hecho, el servidor que tenia probando mod_harbour, el httpd.conf no tenia esas variables SetEnv y me funcionaba el objeto "Excel.Application"
Un Saludo,
Xevi.
-
25-09-2020 a las 22:43 #791Pedro AmaroSuperadministrador
Efectivamente, el NefeleWizard añade esas líneas en el hhtpd.conf.
Pues tendremos que ver por que le funciona a Fredy, yo no utilizo Office así que o puedo probarlo.
Un Saludo
-
26-09-2020 a las 08:40 #792XeviParticipante
Por lo que voy probando, y si puedo ayudar en alguna prueba me pongo a vuestra disposición...
El problema no está en OLE - Office, ya que lo carga correctamente con CreateObject()
El problema lo está dando al "acceder" al ficherete. Al momento del Open()
He probado de cambiar la ruta del fichero o quitar/eliminar/renombrar el fichero, y Open() da el mensaje de que no encuentra el fichero, que es un mensaje correcto. En el caso que el fichero exista es cuando da el error de no poder acceder a él.
Gracias por vuestro tiempo.
Un Saludo,
Xevi.
- Esta respuesta fue modificada 4 años, 1 mes por Xevi.
Adjuntos:
Debes acceder para ver los archivos adjuntos. -
26-09-2020 a las 09:45 #795Alfredo SanzSuperadministrador
Xevi,
Adjunta el projecto y el xls y lo pruebo en mi servidor
-
26-09-2020 a las 18:46 #797
-
27-09-2020 a las 09:59 #810XeviParticipante
Se me dio por probar con Apache que tengo funcionando con mi Server con mod_harbour
El mismo exe que construye Nefele+Xailer lo coloco en cgi-bin de ese Server y funciona!!!
Abre correctamente el fichero con oExcel:WorkBooks():Open(cFileXLS)O sea, que se trata de alguna configuración del Apache24 que tengo instalado para Néfele.
Seguro que eso os puede ayudar en algo para "localizar" que puede estar pasando, pero por lo visto se trata de accesos/permisos, no se, yo no entiendo.
De momento, puedo proseguir mis pruebas testeando con ese Apache.
Gracias por vuestro tiempo.
Un Saludo,
Xevi.
-
27-09-2020 a las 10:49 #811Alfredo SanzSuperadministrador
Bueno, algo es algo 🙂
He probado tu ejemplo en mi servidor y también funciona.
Vamos a hacer una cosa:
Mándame el httpd.conf del servidor donde no funciona y lo comparo con el mío.
Dime también el apache que usas (xampp,wampp,etc..)
Casi seguro que es alguna opción de seguridad de apache que te está enjaulando el cgi y te impide el acceso a ficheros.
Créate un fichero txt en la misma carpeta que tienes el xls y prueba a ver si lo puedes abrir desde néfele
1234With Object TWebPage():New():AddHTML( MemoRead("c:\prova\prova.txt") )oCgi:SendPage( :Create() )End WithCon :AddHtml puedes inyectar código html a tu página, por ejemplo
prova.txt123<hr><center>fichero de texto</center><hr> -
27-09-2020 a las 10:53 #812XeviParticipante
Ahora... otro tema por lo que concierne al mismo tema, la subida de fichero, al menos en este caso que estoy probando (fichero excel) no termina de funcionar correctamente, pues el fichero original y el recibido en la carpeta cgi-bin/tmp no son "iguales"
Si intento abrir el fichero recibido con excel, encuentra un error y excel informa y "repara"... cosa que no me sirve, pues debo tratar ese archivo sin abrir excel, sinó SOLO utilizando el objeto "Excel.Application"
Comparando los dos archivos, el de origen i el tmp, (con Winmerge), veo que el fichero tmp le añade un bit más al final del fichero.
Ese es el problema, si le quito ese caracter final [1A] los dos archivos son idénticos.
Un Saludo,
Xevi.
Adjuntos:
Debes acceder para ver los archivos adjuntos. -
27-09-2020 a las 11:04 #814XeviParticipante
Fredy,
Si, puedo abrir/leer perfectamente un fichero con Néfele
He creado un fichero txt y me lo mustra como bien me has puesto como ejemplo.
Te adjunto el httpd.conf del servidor Apache24 sin utilizar xampp y que es el que da el error al abrir el archivo excel
Un Saludo,
Xevi.
- Esta respuesta fue modificada 4 años, 1 mes por Xevi.
Adjuntos:
Debes acceder para ver los archivos adjuntos.-
27-09-2020 a las 11:06 #818Alfredo SanzSuperadministrador
Ne ha enviado bien el http.conf
Comprime el fichero en un zip o si lo prefieres mándamelo a hola@nefele.dev
-
27-09-2020 a las 11:05 #815Alfredo SanzSuperadministrador
Ok. Vamos a revisarlo. Ese es el carácter de final de fichero (^z) que el memowrit de clipper se empeña en poner al final.
-
27-09-2020 a las 12:19 #820quimParticipante
Fredy
Utiliza mejor hb_memowrit() que puedes controlar caracter final de fichero
https://vivaclipper.wordpress.com/2014/01/16/hb_memowrit/
Saludos
-
28-09-2020 a las 18:59 #859XeviParticipante
De momento... y hasta que no salga una actualización con esto me apaño...
1234cFileTemp := GetTempFilename()cMemo := HB_MemoRead( cFileXLS )HB_MemoWrit( cFileTemp, SubStr(cMemo,1,Len(cMemo)-1), .F. )cFileXLS := cFileTempMe hago una copia sin el último caracter en la carpeta tmp (que curiosamente, es C:\xampp\tmp, windows tiene su tmp y Apache la suya, curioso, pero lógico, claro!!!)
Un saludo,
Xevi.
-
-
27-09-2020 a las 14:00 #836Alfredo SanzSuperadministrador
Xevi, lo he probado con tu httpd.conf y también me funciona .
El apache que me dices que funciona está en el mismo ordenador?
Solo se me ocurre que pueda ser algo relacionado con el antivirus o el firewall. Prueba a desactivar todo a ver.
-
27-09-2020 a las 15:04 #837XeviParticipante
Fredy,
Apache24 en C:\Apache24 -> falla
Apache24 con xampp en C:\xampp -> funciona correctamente
sobre la misma PC (bien, en dos PCs con mismo comportamiento)
Windows 10 Enterprise LTSC, Office2019Paro un Apache y cambio de Apache, deteniendo servicio y volviendo a arrancar... SIEMPRE el mismo comportamiento
Un Saludo,
Xevi.
-
27-09-2020 a las 18:37 #840Alfredo SanzSuperadministrador
Lo cierto es que es muy raro. ¿tal vez porque tengas cosas en 32 bits y otras en 64 bits?
Mándame por wetransfer la carpeta apache24 completa, que la pondré en el mío a ver qué me dice
-
27-09-2020 a las 18:58 #841XeviParticipante
Enviado enlace wetransfer a hola@nefele.dev
Office2019 es 32 bits, todo lo demás 64bits
- Esta respuesta fue modificada 4 años, 1 mes por Xevi.
-
27-09-2020 a las 21:03 #845Alfredo SanzSuperadministrador
He instalado la copia de tu apache
El exe que yo tenía, el que solo lee el excel de c:\prova funciona correctamente
El exe que me has mandado por wetransfer me da este error
sin el código fuente no sé decirte si la línea 150 es antes o después de leer el fichero xls. Ya me dirás
-
27-09-2020 a las 21:31 #846XeviParticipante
el código fuente ha cambiado mucho desde que te lo envié y no sabria decirte...
Te he pasado el proyecto más sencillo, mas pequeño... el exe que me genera a mi NefeleXailer y el fichero xls
Un Saludo,
Xevi
-
27-09-2020 a las 21:59 #852Alfredo SanzSuperadministrador
jeje, déjame hacer un poco de publicidad:
Bueno es lo que tiene utilizar un sistema tan potente como néfele, que en 4 días haces tanto que ya no se parecen en nadaBueno, he cargado tu apache con el exe que me has mandado, y pásmate, funciona
Lo cierto es que es algo muy extraño. Seguiré investigando a ver si encuentro alguna explicación
-
01-10-2020 a las 09:35 #913XeviParticipante
Bien, voy haciendo pruebas y me voy topando con comportamiento distinto en momento de acceder a archivos físicos de mi PC o red... en Apache, dependiendo si éste es con xampp o no.
File( "\\Server10\c\Xailer\Bin\Xailer.exe" ) -> .T. en c:\xampp .F. en c:\Apache24
oExcel:WorkBooks():Open( "c:\prova\prova.xlsx" ) -> .T. en c:\xampp .F. en c:\Apache24
Voy a instalar una VM con VirtualBox, de cero, con windows10 (no enterprise) y primero a ver si me funciona File( "\\Server10\c\Xailer\Bin\Xailer.exe" )... si eso, luego ya a ver instalo Office2019, y a ver donde llego.
Un Saludo,
Xevi.
-
01-10-2020 a las 10:50 #914XeviParticipante
Pues NO... Apache sigue sin funcionarme lo de acceder a algunos archivos fuera de htdocs
He instalado una VM con Windows10 pro
He copiado la carpeta Apache y he iniciado el servidor
C:\Apache24\bin\httpd -k install
net start Apache2.4Me ha dado primero error que faltaba vcruntime140.dll y no se poodia arrancar Apache.
Lo he descargado de https://es.dll-files.com/vcruntime140.dll.html y copyado en C:\Windows\System32 y en C:\Windows\SysWOW64
luego me ha dejado arrancar correctamente Apache.
funciona localhost
funciona localhost/cgi-bin/provanefele.exe
Pero...
File( "\\Server10\c\Xailer\Bin\Xailer.exe" ) sigue devolviendo .F.
No se que más probar!!!
- Esta respuesta fue modificada 4 años, 1 mes por Xevi.
-
01-10-2020 a las 12:03 #916Alfredo SanzSuperadministrador
Ok. mantenos informados de tus avances
-
01-10-2020 a las 14:17 #917Pedro AmaroSuperadministrador
He probado con Apache a buscar un fichero ubicado en un NAS, en una carpeta publica que no requiere autentificación y he puesto esto para verlo.
1oCGI:Console( File( "\\nas2pc\public\xailer604_beta.exe" ) )Y me da .T. que es lo correcto.
No se si el problema que tienes es porque el recurso compartido al que estas accediendo necesita autentificación, y al intentar acceder con Apache como servicio se autentifica con el usuario asignado en la definición del servicio y no lo reconoce como en servidor del recurso.
Xamp abre Apache como programa por lo que se autentifica con el usuario local y cualquier otro permiso que tenga asignado.
-
01-10-2020 a las 15:01 #919XeviParticipante
a ver si puede servir de algo, al menos ahora tengo Apache (sin xampp) funcionando.
El caso...
Si arranco Apache desde C:\Apache24\bin haciendo doble click en httpd.exe, quedándose y dejando la ventana msdos abierta, me está funcionando TODO correctamente
File( "\\Server10\c\Xailer\Bin\Xailer.exe" ) -> .T.
oExcel:WorkBooks():Open( "c:\prova\prova.xlsx" ) -> .T.
Ahora viene donde no me funciona... cuando tengo Apache como servicio... ejecutando como administrador un bat con:
C:\Apache24\bin\httpd -k install
net start Apache2.4File( "\\Server10\c\Xailer\Bin\Xailer.exe" ) -> .F.
oExcel:WorkBooks():Open( "c:\prova\prova.xlsx" ) -> .F.
No se que hará/hace xampp, arrancando con xamp-control.exe, alguna cosa debe hacer, peró ahí a mi se me escapa.
De momento, puedo tener esa ventanita de msdos abirta, la minimizo y ya está, pero creo que debe tener alguna solución.
Ahí voy haciendo mis pruebas... en un segundo Server, que a veces tengo conectado o no, por si alguien quiere chafardear.
http://xevicomas.duckdns.org:8069/cgi-bin/provanefele.exe
Un Saludo,
Xevi.
-
01-10-2020 a las 20:58 #926Alfredo SanzSuperadministrador
Parece que es un problema de permisos de windows
mira en servicios como tienes el apache
en lugar de la cuenta del sistema elige la opción "esta cuenta" y dale las credenciales del usuario con el que te está funcionando.
Reinicia apache y... que Dios reparta suerte!!
Ya me contarás
-
01-10-2020 a las 21:59 #927
-
04-01-2021 a las 16:38 #1676XeviParticipante
Retomando este hilo...
Hace unos días que estoy apartado de mis prubas, y veo que en alguna actualización, algo ha variado al "subir" un fichero.
El tema por lo que concierne a la subida de fichero, al menos en este caso que estoy probando (fichero excel) no termina de funcionar correctamente, pues el fichero original y el recibido en la carpeta cgi-bin/tmp no son "iguales"
Si intento abrir el fichero recibido con excel, encuentra un error y excel informa y "repara"... cosa que no me sirve, pues debo tratar ese archivo sin abrir excel, sinó SOLO utilizando el objeto "Excel.Application"
Comparando los dos archivos, el de origen i el tmp, (con Winmerge), veo que el fichero tmp le añade un retorno de carro al final del fichero.
Anteriormente se le añadía un caracter 1A, pero por lo visto, ahora se le añade ese caracter de retorno de carro
EDITADO ***
Más concretamente, se añaden, actualmente, 2 carácteres de más, Chr(13) y Chr(10). De momento "reescribo" el archivo quitando 2 bytes, y funciona.
12345Local cFileTemp := GetTempFilename( oCgi:cPathTmp )Local cMemo := HB_MemoRead( cFileFullXLS )oCGI:Console( cFileTemp, Len(cMemo) )HB_MemoWrit( cFileTemp, SubStr(cMemo,1,Len(cMemo)-2), .F. )cFileFullXLS := cFileTempUn Saludo,
Xevi.
- Esta respuesta fue modificada 3 años, 10 meses por Xevi.
-
04-01-2021 a las 20:36 #1678Alfredo SanzSuperadministrador
Vamos a mirarlo y te cuento.
Feliz año!
-
22-02-2024 a las 10:06 #2204dmillasParticipante
Hola a todos.
He probado este ejemplo para ver como podia obtener algún dato de una hoja de calculo y me sale el siguiente error.
Podria estar relacionado con la versión de excel que tengo instalada Office 365??
-
22-02-2024 a las 12:14 #2205Pedro AmaroSuperadministrador
¿Has probado a colocar el archivo en una carpeta dentro de Apache, por ejemplo en cgi-bin\tmp?
-
22-02-2024 a las 13:21 #2206dmillasParticipante
Hola,
lo he probado con esta ruta y sale el mismo error.
cFileXLS := "c:\apache24\cgi-bin\tmp\prueba.xlsx"
-
22-02-2024 a las 23:22 #2208Pedro AmaroSuperadministrador
Prueba a abrirlo con un proyecto de Xailer, para intentar acotar un poco el error.
-
23-02-2024 a las 11:40 #2209dmillasParticipante
Hola, gracias por la ayuda.
En un proyecto Xailer si que me abre el fichero xlsx y me coge el valor de la celda que le indico, en Nefele falla al abrir el excel.
TRY
oExcel := GetActiveObject( "Excel.Application" )
CATCH
TRY
oExcel := CreateObject( "Excel.Application" )
CATCH
MsgInfo( "Excel no disponible. [" + Ole2TxtError() + "]" )
RETURN .F.
END
ENDoExcel:WorkBooks:Open( "C:\Apache24\cgi-bin\tmp\prueba.xlsx")
oPage := oExcel:WorkSheets( 1 )
MsgStop(oExcel:Cells( 1,1 ):Value) -
27-02-2024 a las 09:26 #2210dmillasParticipante
El servidor que uso no es https:/ pero tampoco funciona en localhost.
No sé si eso tendrá algo que ver, en proyecto Xailer funciona todo perfecto.
-
01-05-2024 a las 12:03 #2235dmillasParticipante
Hola.
Sigo dandole vueltas a la apertura y obtencion de datos de un excel en Nefele.
En Xailer si excel esta abierto no pasa al CreateObject( "Excel.Application" ) pues ya esta abierto.
En Nefele siempre pasa al CreateObject( "Excel.Application" ) este abierto excel o no.
He probando indicado la direccion IP CreateObject( "Excel.Application" ,"direccion ip") pero siempre da fallo al oExcel:WorkBooks:Open(cFileXLS)
Sabriais indicarme que hago mal, se supone que la parte que no sea visual de xailer tendria que funcionar en nefele.
Muchas gracias
-
03-05-2024 a las 13:43 #2236dmillasParticipante
Hola.
He probado lo que indicaba Xevi y funciona correctamente, lo unico que hay que dejar la ventana negra abierta y no arracar como servicio.
"Si arranco Apache desde C:\Apache24\bin haciendo doble click en httpd.exe, quedándose y dejando la ventana msdos abierta, me está funcionando TODO correctamente"
Gracias
-
-
AutorEntradas
- Debes estar registrado para responder a este debate.