Blog

Comandos SDV

Los comandos SDV son comandos de servidor de disco. Nos permiten realizar operaciones de gestión de ficheros, por ejemplo, copiarlos desde nuestro ordenador al servidor o viceversa, además de eliminar, actualizar, renombrar, etc. dichos ficheros.

En Velneo v7 se ha añadido un comando «SDV: Conectar» para estas operaciones. Este comando debe ser escrito antes que cualquier otra operación SDV y nos permite:

– Autenticar el usuario con independencia de las operaciones posteriores, lo que nos permite tratar de forma individual un problema de credenciales

– Autenticar el usuario una única vez para un grupo de comandos SDV

Este comando es un avance con respecto a v6, donde en cada comando SDV había que autenticarse contra el servidor, de modo que el comando aumentaba en complejidad, probabilidad de error y repetición de operaciones y por tanto en lentitud.

Ejemplo de importación/exportación con SDV

Comandos SDV 1

Una vez autenticados, las posibles operaciones SDV que podemos realizar son:

– Importar fichero: Permite copiar un fichero del servidor a nuestro ordenador

– Exportar fichero: Permite copiar un fichero de nuestro ordenador al servidor

– Eliminar fichero: Elimina un fichero del servidor

– Get Atributos fichero: Obtiene atributos principales de un fichero: tamaño, si es una carpeta, y la fecha y hora de creación

– Renombrar o mover fichero: Modifica el nombre y/o ruta de un archivo dentro del servidor

– Actualizar fichero: Actualiza un fichero en nuestro ordenador si la versión del fichero en el servidor es más reciente

En todos estos comandos, existen 2 parámetros principales, la senda VRL y la senda sin descripción añadida:

– La senda VRL hace referencia al servidor, y su construcción debe ser de la forma «Carpeta compartida/Subdirectorios1/Subdirectorios2/fichero.extension». Nótese que las barras son hacia la derecha y que se empieza sin barra. Es obvio, que un usuario solo podrá acceder a las carpetas compartidas a las que se le haya dado permiso de acceso.

– La otra senda hará referencia a una ruta en nuestro disco duro, que habitualmente se pedirá por pantalla al usuario. En caso de escribir o modificar manualmente dicha ruta en el proceso, se recomienda usar siempre la barra hacia la derecha tanto en sistemas Windows («C:/Directorio/Fichero.extension») como Linux («/home/directorio/fichero.extension»), si bien Windows también soporta rutas del tipo «C:\\Directorio\\Fichero.extension».

18 thoughts on “Comandos SDV

  1. Hola Cesar,

    al leer tu pregunta he visto que el texto donde se explicaba la forma de las rutas locales no estaba claro, además de haber olvidado poner la doble barra en las rutas para Windows.

    He ampliado y corregido dicho párrafo y espero que ahora resuelva tu duda.

    Muchas gracias y un saludo

    Víctor

  2. Buenas tardes.

    Está previsto en la V7 la replicación en caliente entre dos o más servidores?, claro, en forma normal y prácticamente transparente con en otras bases de datos.

    Gracias.

  3. Buenas tardes.

    Está previsto en la V7 la replicación en caliente entre dos o más servidores?, claro, en forma normal y prácticamente transparente con en otras bases de datos.

    Gracias.

  4. A mi siempre me ha despistado un montón el tema éste de «importar» o «exportar». Siempre que voy a usarlo termino mirando la ayuda porque no me acuerdo nunca muy bien si «importar» o «exportar» es copiar archivos del servidor al cliente o del cliente al servidor.

    Abogo por cambiar el nombre de éstas intrucciones o por lo menos complementarlas para que sean más autoexplicativas, como por ejemplo «SDV:Enviar a Servidor» «SDV:Enviar a Cliente» o «SDV:Exportar a Servidor» y «SDV:Importar a Cliente»

    Saludos.

    Dario Plaza

  5. Hola VRomero,

    Creo que se refiere a los servicios de replicación de tablas que utilizan otras tecnologías como SQL Server u Oracle.

    Por ejemplo, en SQL Server las tablas tienen propiedades de replicación, donde se les indica si son replicables o no, contra que servidor se replican y si son el «Maestro» o el «Esclavo» … etc …

  6. Victor, Tengo un tema para resolver y es el siguinete: 
    En la versión 6.x programamos un proceso que lanza un aplicacion gentxt.exe param1, param2 donde param1 es el nombre del archivo que debe darle al txt y param2 es el codigo de cliente del cual queremos extrarer los datos, todo esto lo pusimos en un proceso y luego es ejecutado desde un demonio, y tes explico por que, el gentxt.exe y los datos (.dat) de donde el programita debe sacar la info esta en el servidor  Ej, S:\\datos\\ cuando el demonio ejecuta el proceso lo hace en modo servidor y cambiando el directorio por defecto a S:\\datos\\ logramos que las operaciones de de archivos se realizan en la unidad y capeta espesificada del SERVIDOR. Cual es el punto estoy programando esto mismo y no logro que el proceso utilice la carpeta del servidor para hacer las operaciones sino que lo realiza localmente, y obvio que no encuantra S:\\DATOS\\ y por lo tanto no  obtengo nada. 
    Hay alguna manera de que este proceso ejecute en modo servidor?
    Un saludo y gracias…
     
    Ale
     

  7. Hola Alejandro,

     

    En la versión actual, la única forma de ejecutar procesos en el servidor es hacerlo desde los eventos de tabla, que como sabrás siempre se disparan en el servidor.

    Te recomiendo que de momento lo dejes hasta que en las próximas versiones se active la ejecución de procesos en tercer plano.

    Cuando tengamos más información lo publicaremos.

     

    Un saludo.

  8. Alejandro,
    gracias
    voy a ver como me las arreglo entonces……
    Por que es algo que me permite interactuar con datos del sistema (DOS) que usa la empresa para la cual estoy desarrollando.
    Obviamente que mapeando la unidad estaria resolviendo el problema, pero no tengo una buena velocidad. 
    Nuevamente gracias por la pronta respuesta.
     
    Un saludo.
    Ale
     

  9. Estas funciones deberían soportar también impersonación (el usuario logueado es el que autentica). Tener que pasar las credenciales no parece demasiado seguro nos obliga a ofuscar las credenciales en el proyecto.

Dejar un comentario