anonymous Log in
Search
Recents:
v3.0
gx-l
Problema con Manejo de archivos
03/08/20 13:56

antoniodiaz.gm

Replies: 11

Buenos días
Sera que alguien me pueda apoyar con esto. Me estoy dando de topes con algo
que pensé era sencillo.
Quiero copiar archivos a una carpeta con la variable &File (Tipo File),
pero no lo hace. Trate de hacerlo de 2 formas y no logro hacer el copiado.
Lo más raro es que cada caso se comporta diferente y por lo mismo no puedo
usar ninguno.
*CASO 1*.- El archivo lo tomó de un campo BLOB y tengo la respuesta "*The
file exists!*", pero al final no hace la copia en la nueva ruta &Ruta (Tipo
carácter) siendo que la misma si existe.
For Each
Where HD4Id=&HD4Id
&File.Source=HD4Arch
If &File.exists()
msg("The file exists!")
Else
msg("The file does not exist!")
EndIf
&Ruta='E:\Antonio\Tmp\' + &File.GetName()
&File.Copy(&Ruta)
Endfor
*CASO 2.- *Pongo el archivo directo en &File (Variable tipo: FILE), pero me
regresa el mensaje:* "The file does not exist!" *
Por lo mismo no puedo hacer la copia.
&File.Source="E:\Antonio\TEST.txt"
If &File.exists()
msg("The file exists!")
Else
msg("The file does not exist!")
EndIf
(Trabajo con GeneXus 15 U11 y GeneXus X Evolution 3 U6)
-----------------------------------------
Para Suscribirse/Desuscribirse:
http://www.gxtechnical.com/cgi-bin/hforum.exe?2,3,30,1
Por consultas owner-gx-l@gxtech.com.uy
Replies

javier zepeda

03/08/20 16:51
Hola Verificaste si tiene permisos(sobre las carpetas) para realizar lo que indicas Saludos Leonardo Zepeda A. El lun., 3 ago. 2020 a las 12:57, Antonio Diaz ()

antoniodiaz.gm

03/08/20 18:55
Hola Leonardo. Si. Revise mi equipo donde corro el programa y no veo problema de permisos. También publique en el servidor donde corro mis otras aplicaciones y me hace lo mismo. Saludos El lun., 3 ago. 2020 a las 14:53, Leonardo Zepeda ()

Ricardo Coulthu73383

04/08/20 08:57
Cuando lo usas así &File.Source=HD4Arch Lo pondría así (por las dudas) &File.Source=HD4Arch.Trim() Si poniendo esto &File.Source="E:\Antonio\TEST.txt" No lo encuentra, es que no existe o no tiene permisos Si es un WebPanel debe tener permisos sobre esa carpeta, sino nunca lo va a ver Saludos Ricardo Coulthurst El lun., 3 ago. 2020 a las 13:57, Antonio Diaz ()

javier zepeda

04/08/20 10:05
Hola Porque no utilizas &File.ErrCode &File.ErrDescription Saludos Leonardo Zepeda A. El lun., 3 ago. 2020 a las 17:56, Antonio Diaz ()

antoniodiaz.gm

04/08/20 12:02
Gracias por la información Ricardo Lo de TRIM hice eso y otras variantes. Pero no funciona. Si las instrucciones con FILE son correctas, entonces voy a buscarle por el lado de los permisos en el equipo. Esperaba saber si existiera alguna configuración adicional para FILE. En otros proyectos he usado "DFWOpen" y creado PDFs con Genexus mandandolos a directorios sin dificultad Ahora lo necesito con archivos que carga el usuario a la BD. Por eso se me hacía factible usar FILE Voy por los permisos. Gracias. El mar., 4 ago. 2020 a las 6:57, Ricardo Coulthurst (< soporte@inetwork.com.uy>)

antoniodiaz.gm

04/08/20 12:03
Gracias Leonardo. De acuerdo. Voy a hacer lo que indicas y adicionar buscar por tema de permisos. El mar., 4 ago. 2020 a las 8:07, Leonardo Zepeda ()

Enrique Almeida

04/08/20 12:21
E: , es una unidad de Red o es una unidad local? El usuario que ejecuta el programa, tiene la unidad e: conectada? Podrias probar con la uri &File.Source="\\server\recursocompartido\Antonio\test.txt" para descartar que el problema venga por ese lado. El lun., 3 de ago. de 2020 a la(s) 13:57, Antonio Diaz ( antoniodiaz.gm@gmail.com)

alonso.gx

04/08/20 12:04
Estas en web? Si es asi: Esa unidad E:\ es unidad Mapeada? Si lo es, normalmente no se puede, pero el compañero Enrique Almeida [ealmeida@concepto.com.uy] escribió como hacerlo. Saludos.

antoniodiaz.gm

04/08/20 12:57
Hola Enrique. Gracias Donde desarrolló "E" es unidad mapeada. Pensando en eso publique el proyecto en WEB donde en el servidor si existe esa unidad "E" y hace lo mismo. Antes ya lo había hecho en C que si es unidad física, pero hacía lo mismo. Lo voy a hacer con "\\server\recursocompartido" para ver que resulta. El mar., 4 ago. 2020 a las 10:21, Enrique Almeida ()

maxialba

04/08/20 12:56
Hola! Es probable que desde la aplicación no tengas dominio sobre la ubicación E:\Antonio\.... Probá el CASO 1 seteando &Ruta a una subcarpeta de donde tenes ejecutando la aplicación (ej: si trabajas con IIS C:\inetpub\wwwroot\App\Temp) ________________________________ El lun., 3 de ago. de 2020 a la(s) 13:57, Antonio Diaz (antoniodiaz.gm@gmail.com)

antoniodiaz.gm

04/08/20 14:17
Hola Enrique Gracias a todos por los comentarios. Confirmó que la forma que me funciono es: *&File.Source="\\server\recursocompartido\test.txt" * Definitivamente si es de permisos. En mi equipo aun con "\\" no me lo hace, pero realmente lo necesito que se queden en el server. Por lo tanto, ya tengo la solución. Pude bajar archivos de la BD y copia entre directorios. [image: image.png] Con calma revisare con el área de soporte los permisos en mi equipo. Pero eso ya es otra historia. El mar., 4 ago. 2020 a las 10:57, Antonio Diaz ()


Back to gx-l