Crear directorio con funcion remota


([N4] gontorre) #1

Buenos días

A ver si me podéis echar una mano con un problema que me está volviendo loco.

Tengo un proceso que genera unos ficheros para subir a un FTP unos ficheros con un detalle de facturas en TXT. Necesito que este proceso se ejecute de forma automática todos los días a una hora determinada. Los ficheros se generan en una carpeta de un equipo de la red local cuya ruta tengo configurada en una tabla de parámetros. Cada día se genera una subcarpeta con la fecha en formato yyyymmdd. Es decir la estructura de carpetas sería:

//192.168.0.119/DOCUMENTOS/VELNEO/FACTURAS/20150527

Como necesito que se ejecute de forma automática he creado una función remota que hace el proceso y llamo a la función con vRemoteFunction.exe vatp://192.168.0.119 SCEGESTION AUTO_PRUEBA auto 1234

El problema es que cuando ejecuto en remoto no me crea las carpetas, ni los ficheros. Si defino la ruta en los parámetros como C:/DOCUMENTOS/VELNEO/FACTURAS lo hace bien, pero si establezco una ruta con una unidad de red mapeada o con un camino tipo //192.168.0.119/… no funciona. Si ejecuto la función en mi vClient local siempre lo hace bien.

Adjunto el código de una función de prueba que sólo crea la carpeta para que veáis lo que hago.
¿Alguna ayuda?

Gracias

Gonzalo Torre


([N4] gontorre) #2

Y ahora, como siempre, el adjunto



([N4] gontorre) #3

Sigo peleándome con este tema que me tiene bloqueado.

Haciendo pruebas he comprobado lo siguiente. Tengo un proceso que hace simplemente Crear directorio(C_CARPETA,Sí,) ,donde C_CARPETA es la senda del directorio que quiero crear. Si paso como parámetro “C:/DATOS/PRUEBA” funciona correctamente tanto en primer plano como en tercer plano. Lógicamente cuando lo ejecuto en tercer plano crea el directorio en el disco C: del servidor.

En cambio si paso como parámetro “//192.168.0.119/DATOS/PRUEBA” funciona en primer plano, pero en tercer plano no crea el directorio.

Estoy trabajando con un servidor en red local.

¿Es normal este comportamiento o me pierdo algo?

Os agradecería toda la ayuda posible pues tengo que montar varios procesos que generan ficheros en el servidor de forma automática y estoy totalmente parado con el tema.

Un saludo

Gonzalo Torre


([N1] Anacreonte) #4

Hola,

¿Has probado a no ponerle la letra de la unidad?.

Quedaría tal que así “/DATOS/PRUEBA”

Un saludo.


([N4] gontorre) #5

Al final he optado por una solución diferente porque además del problema de las carpetas me ocurría que ejecutando la función en remoto no tenía acceso a la DLL de vFTP.

Harto de pelearme con el tema he creado una solución que simplemente ejecuta el proceso en el autoexec y luego se cierra con Salir de la aplicación. Así el vClient se ejecuta en local y todo funciona bien.

Para ejecutar el vClient desde el programador de tareas he creado un archivo CMD con una sóla línea:

START “VELNEO” “C:\PROGRAM FILES\VELNEO\V7\vCliente.exe” vatp://usuario:contraseña@servidor:690/NOMBRE_SOLUCION

Esto me obliga a tener una solución aparte que hace el proceso, pero es un mal menor.

Espero que cuando haya tareas programadas en el servidor sea más sencillo.

Un saludo

Gonzalo Torre


([N3] pacosatu) #6

Hola Gonzalo.

Creo que tiene que ver con las credenciales que usa el servicio vServer. Si has instalado vServer con licencia Por Máquina las credenciales son LocalSystem. Por lo tanto el servicio vServer tiene vetado el acceso a recursos de red.

Lo puedes comprobar desde vAdmin si intentas crear una carpeta de Datos, verás que solo aparecen las Unidades locales.

De todas formas consúltalo con Soporte, que alguna solución habrá.

Saludos
Paco Satué


([N4] gontorre) #7

Hola Paco,

Pues esta respuesta tan sencilla que me estás dando no me la han dado en soporte. Me hubiera ahorrado dos días de desesperación.

Un saludo


([N1] Anacreonte) #8

Una consulta, ¿donde se puede descargar la dll de vFTP? o es solo para un nivel mayor.

Un saludo.


([N4] gontorre) #9

Yo la tengo de la open app vFTPWin.

Si no está en la página de descargas pídela en soporte que te la enviarán

Un saludo


([N2] fermin3f) #10

Paco, eres un crack.