PC SOFT

AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente. Haga clic aquí para ver la versión en inglés.
  • Ejemplo de valores que pueden ser tomados por el parámetro
  • Los valores devueltos por la Procedure
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadApple WatchUniversal Windows 10 App
Otros
Procedimientos almacenados
WLanguage Procedure llamado por fCopyFile
WLanguage Procedure ("callback") llamado por fCopyFile para cada archivo copiado. Este Procedure se utiliza para obtener el ruta del archivo que se va a copiar y el ruta de destino asociado. Por ejemplo, esta Procedure puede utilizarse para filtrar los archivos que se van a copiar.
Este procedimiento puede ser local, global o interno.
Ejemplo
// Copy the files found in the "C:\MyImages" directory
ResCopy = fCopyFile("C:\MyImages\*.*", "D:\MyFiles\", fCopyFile_Callback)
 
INTERNAL PROCEDURE fCopyFile_Callback(ToCopy, Destination)
// The procedure is called for each file in the directory.
// The ToCopy parameter contains the name of the file to be copied
// The Destination parameter contains the name of the destination file
// In this example, files with extension ".xlsx" are not copied
IF fExtractPath(ToCopy, fExtension) = ".xlsx" THEN
RESULT fcIgnore
ELSE
// Display the name of the file being copied in a static control
STC_File_InProgress = ToCopy
RESULT fcCopy
END
END
Sintaxis
<Result> = fCopyFile_Callback(<File to copy> , <Destination file> [, <Change> [, <Procedure pointer>]])
<Result>: Constante de tipo Integer
copy del elemento actual:
fcStopSe utiliza para detener el copy permanentemente.
fcCopySe utiliza para continuar el copy.
fcIgnoreSe usa para ignorar la copy de un archivo.
<File to copy>: Cadena de caracteres
Ruta y nombre del archivo a copy.
<Destination file>: Cadena de caracteres
Ruta y nombre del archivo de destino.
<Change>: Constante opcional de tipo Integer
Permite saber si se cambió de directorio. Los valores posibles son:
flFirstFileEl archivo es el primero que aparece en el directorio de <Archivo a copy>.
flChangeDirEl archivo es el primero que aparece en un subdirectorio de <Archivo a copy> (esto significa que el directorio ha sido cambiado).
flFileTodos los demás casos.
<Procedure pointer>: Entero opcional
Valor pasado en el parámetro <Puntero> de la función fCopyFile. Si no se especifica el parámetro <Puntero> en la función fCopyFile, el valor de <Puntero de procedimiento> es 0.
Observaciones

Ejemplo de valores que pueden ser tomados por el parámetro <Cambiar>

A continuación se detallan los diferentes valores que puede tomar <Cambio> al navegar por los archivos copiados por fCopyFile:
Archivo actual<Cambiar>
Dir\Archivo 1flFirstFile
Dir\Archivo nflFile
Dir\SubDir 1\Archivo 1flChangeDir
Dir\SubDir 1\Archivo mflFile
Dir\SubDir 2\Archivo 1flChangeDir
Dir\SubDir 2\Archivo xflFile
Versiones 19 y posteriores

Los valores devueltos por la Procedure

El Procedure llamado por fCopyFile debe devolver uno de los siguientes valores:
fcStopSe utiliza para detener el copy permanentemente.
fcCopySe utiliza para continuar el copy.
fcIgnoreSe usa para ignorar la copy de un archivo.

Se produce un error de WLanguage si el Procedure no devuelve uno de estos valores.
Caso 1. Interrupción total de copy
Para forzar la interrupción de la copia, el Procedure llamado por fCopyFile debe devolver la constante fcStop.
Ejemplo: el "CopyProduct" Procedure es llamado automáticamente por fCopyFile:
PROCEDURE CopyProduct(PathSourceFile, PathDestinationFile)
...
// Stop requested?
Multitask(-1)
IF KeyPressed(kpEscape) = True THEN
Info("The copy will be stopped")
RESULT fcStop
END
...
RESULT fcCopy
Si se pulsa la tecla Esc, el Procedure llamado por fCopyFile devuelve la constante fcStop.
En cualquier otro caso (para seguir copiando), el Procedure llamado por fCopyFile devuelve la constante fcCopy.
Caso 2. Partial interrupción de copy
Para evitar que el Procedure llamado por fCopyFile se ejecute para un archivo determinado, este Procedure debe devolver la constante fcIgnore.
Ejemplo: La Procedure "FindProduct" es llamada automáticamente por fCopyFile:
PROCEDURE FindProduct(PathSourceFile, PathDestinationFile)
...
// File to ignore
IF StringEndsWith(PathSourceFile, "WrongFile.XLS") THEN
RESULT fcIgnore
END
...
RESULT fcCopy
Para evitar copiar el archivo "WrongFile.XLS", el Procedure devuelve la constante fcIgnore. La Procedure es llamada automáticamente para el siguiente archivo copiado, sin copiar el archivo actual.
Nueva funcionalidad versión 19

Los valores devueltos por la Procedure

El Procedure llamado por fCopyFile debe devolver uno de los siguientes valores:
fcStopSe utiliza para detener el copy permanentemente.
fcCopySe utiliza para continuar el copy.
fcIgnoreSe usa para ignorar la copy de un archivo.

Se produce un error de WLanguage si el Procedure no devuelve uno de estos valores.
Caso 1. Interrupción total de copy
Para forzar la interrupción de la copia, el Procedure llamado por fCopyFile debe devolver la constante fcStop.
Ejemplo: el "CopyProduct" Procedure es llamado automáticamente por fCopyFile:
PROCEDURE CopyProduct(PathSourceFile, PathDestinationFile)
...
// Stop requested?
Multitask(-1)
IF KeyPressed(kpEscape) = True THEN
Info("The copy will be stopped")
RESULT fcStop
END
...
RESULT fcCopy
Si se pulsa la tecla Esc, el Procedure llamado por fCopyFile devuelve la constante fcStop.
En cualquier otro caso (para seguir copiando), el Procedure llamado por fCopyFile devuelve la constante fcCopy.
Caso 2. Partial interrupción de copy
Para evitar que el Procedure llamado por fCopyFile se ejecute para un archivo determinado, este Procedure debe devolver la constante fcIgnore.
Ejemplo: La Procedure "FindProduct" es llamada automáticamente por fCopyFile:
PROCEDURE FindProduct(PathSourceFile, PathDestinationFile)
...
// File to ignore
IF StringEndsWith(PathSourceFile, "WrongFile.XLS") THEN
RESULT fcIgnore
END
...
RESULT fcCopy
Para evitar copiar el archivo "WrongFile.XLS", el Procedure devuelve la constante fcIgnore. La Procedure es llamada automáticamente para el siguiente archivo copiado, sin copiar el archivo actual.

Los valores devueltos por la Procedure

El Procedure llamado por fCopyFile debe devolver uno de los siguientes valores:
fcStopSe utiliza para detener el copy permanentemente.
fcCopySe utiliza para continuar el copy.
fcIgnoreSe usa para ignorar la copy de un archivo.

Se produce un error de WLanguage si el Procedure no devuelve uno de estos valores.
Caso 1. Interrupción total de copy
Para forzar la interrupción de la copia, el Procedure llamado por fCopyFile debe devolver la constante fcStop.
Ejemplo: el "CopyProduct" Procedure es llamado automáticamente por fCopyFile:
PROCEDURE CopyProduct(PathSourceFile, PathDestinationFile)
...
// Stop requested?
Multitask(-1)
IF KeyPressed(kpEscape) = True THEN
Info("The copy will be stopped")
RESULT fcStop
END
...
RESULT fcCopy
Si se pulsa la tecla Esc, el Procedure llamado por fCopyFile devuelve la constante fcStop.
En cualquier otro caso (para seguir copiando), el Procedure llamado por fCopyFile devuelve la constante fcCopy.
Caso 2. Partial interrupción de copy
Para evitar que el Procedure llamado por fCopyFile se ejecute para un archivo determinado, este Procedure debe devolver la constante fcIgnore.
Ejemplo: La Procedure "FindProduct" es llamada automáticamente por fCopyFile:
PROCEDURE FindProduct(PathSourceFile, PathDestinationFile)
...
// File to ignore
IF StringEndsWith(PathSourceFile, "WrongFile.XLS") THEN
RESULT fcIgnore
END
...
RESULT fcCopy
Para evitar copiar el archivo "WrongFile.XLS", el Procedure devuelve la constante fcIgnore. La Procedure es llamada automáticamente para el siguiente archivo copiado, sin copiar el archivo actual.
Clasificación Lógica de negocio / UI: Código neutro
Componente: wd270std.dll
Ver también
Versión mínima requerida
  • Versión 19
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario