AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Ayuda / WLanguage / Funciones WLanguage / Comunicación / Funciones FTP
  • Gestión del progreso de la transferencia
  • Timeout
  • Permisos de usuarios
  • Ruta relativa o absoluta
WINDEV
WindowsLinuxJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac Catalyst
Otros
Procedimientos almacenados
Transfiere un archivo o directorio a un servidor FTP (File Transfer Protocol).
New in SaaS
Una nueva sintaxis para manipular variables de tipo ftpConnection está disponible a partir de WINDEV Suite SaaS 2025 - Update 2.
Para obtener más información, consulte Utilizar las novedades exclusivas de WINDEV Suite SaaS 2025.
Reportes y Consultas
// Connect the current computer to the FTP server
ConnectionNumber = FTPConnect("192.54.12.8")
// Transfer the "C:\MyDocuments\File.DOC" file
// into the "/Temp" directory on the FTP server
ResSend = FTPSend(ConnectionNumber, "C:\MyDocuments\File.DOC", "/Temp")
New in SaaS
Reportes y Consultas
// Syntax not available in PHP
// Connect the current computer to the FTP server
MyFTPConnection is ftpConnection
MyFTPConnection.Server = "192.54.12.8"
FTPConnect(MyFTPConnection)

// Transfer the "C:\MyDocuments\File.DOC" file
// into the "/Temp" directory on the FTP server
ResSend = FTPSend(MyFTPConnection, "C:\MyDocuments\File.DOC", "/Temp")
Sintaxis
<Result> = FTPSend(<FTP connection> , <File/Directory to transfer> , <Destination file/directory> [, <WLanguage procedure> [, <Transfer mode>]])
<Result>: Booleano
  • True si se realizó la transferencia,
  • False en caso contrario. Utilice la función ErrorInfo para obtener información sobre el error.
<FTP connection>: Entero o variable ftpConnection
<File/Directory to transfer>: Cadena de caracteres
Nombre y ruta completa o relativa del archivo o directorio que se va a transferir. Se puede utilizar una ruta UNC. No se pueden utilizar caracteres comodín (* o?).
Si este parámetro corresponde a un directorio, se transfieren todos los archivos del directorio. Un directorio con el mismo nombre se crea en el servidor FTP en la ubicación especificada por el parámetro <Destination file/directory>.
Si este parámetro corresponde a un archivo:
  • Si el parámetro <Destination file/directory> es un directorio que se encuentra en el servidor FTP, el archivo que se va a transferir se copia en el directorio de destino.
  • Si el parámetro <Destination file/directory> es un archivo que se encuentra en el servidor FTP, el archivo que se va a transferir se copia y se le asigna un nuevo nombre.
<Destination file/directory>: Cadena de caracteres
Nombre y ruta completa o relativa del archivo o directorio de destino. Este archivo o directorio se encuentra en el servidor FTP. Las secciones de la ruta están separadas por barras oblicuas ("/").
  • Una ruta completa tiene el siguiente formato: "/<NombreDirectorio>/<NombreArchivo>". La jerarquía obtenida tiene el siguiente formato: "/<NombreDirectorio>/<NombreArchivo>".
  • Una ruta relativa tiene el siguiente formato: "<NombreDirectorio>/<NombreArchivo>". La jerarquía obtenida tiene el siguiente formato: "/<DirectorioActualEnServidor>/<NombreDirectorio>/<NombreArchivo>".
<WLanguage procedure>: Nombre del procedimiento
Nombre del procedimiento al que se llama automáticamente para comprobar el progreso de la transferencia.
<Transfer mode>: Constante opcional de tipo Integer
Modo de transferencia utilizado:
ftpASCIIModeTransferencia en modo ASCII. Este modo se utiliza para transferir archivos entre distintos sistemas operativos, por ejemplo, de UNIX a Windows. El archivo se entrega en el formato ASCII utilizado por el sistema receptor.
ftpBinaryMode
(Valor predeterminado)
Transferencia en modo binario. En este modo, el archivo recibido es estrictamente idéntico al archivo enviado.
Observaciones
Reportes y Consultas

Gestión del progreso de la transferencia

FTPSend es una función bloqueante. No se puede realizar ninguna otra acción hasta que se haya completado la transferencia actual. Para verificar el progreso de la transferencia, la función FTPSend puede llamar automáticamente al procedimiento <Procedure name> a intervalos regulares.
Este procedimiento se declara de la siguiente manera:
PROCEDURE <Procedure name>(<Total size>, <Transferred size>)
  • <Total size> es un número entero que representa el tamaño total del archivo o directorio que se está transfiriendo.
  • <Transferred size> es un número entero que representa el número de bytes ya transferidos.
Por ejemplo, puede:
  • mostrar una barra de progreso,
  • saber si la transferencia ha finalizado (<Total size> = <Transferred size>).
La función FTPSend no se puede interrumpir hasta que no se hayan transferido todos los archivos. Para detener la función, utilice la siguiente línea de código en <Procedure name>:
RETURN False
En los demás casos (para continuar), <Procedure name> debe devolver True.
Si <Procedure name> no devuelve ningún valor (True o False), se genera un error.

Timeout

De forma predeterminada, todas las funciones FTP fallan si no se recibe ninguna respuesta del servidor FTP después de 20 segundos. Este tiempo puede modificarse:

Permisos de usuarios

Solo un usuario con permisos de lectura en el servidor FTP puede obtener información sobre los archivos o directorios que se encuentran en dicho servidor. En la mayoría de los casos, los usuarios "anónimos" tienen permisos de lectura.

Ruta relativa o absoluta

Las nociones de ruta relativa y ruta absoluta son de gran importancia en una aplicación FTP.
  • Una ruta que empiece por una barra oblicua se considera una ruta absoluta. Esta ruta es relativa a la raíz del servidor FTP (parámetro específico del servidor).
    Ej: /pub/usuario/JULIA
  • Si la ruta no empieza por una barra oblicua, se considera una ruta relativa, es decir, la ruta relativa al directorio actual. El directorio actual puede obtenerse o cambiarse con la función FTPCurrentDir.
Al conectarse a un sitio FTP, el directorio inicial ("home directory" del usuario) no necesariamente es la raíz del servidor FTP. Por lo tanto, se recomienda utilizar rutas relativas.
Clasificación Lógica de negocio / UI: Lógica de negocio
Componente: wd300com.dll
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 30/04/2025

Señalar un error o enviar una sugerencia | Ayuda local