Tarea 'Save As' en Procesos DataCycle
12-17-2008
Francesc Laborda in Base de Conocimiento DataCycle

Esta tarea realiza una segunda copia del resultado de un proceso y reproduce el comportamiento del ‘Guardar Como’ de otras aplicaciones o el Copiar Y Pegar de Windows. De esta manera evitamos explorar por carpetas para generar una segunda copia de los archivo Excel generados. Aunque la tarea de 'Comprimir fichero en zip' ya realiza una copia de seguridad, con esta Tarea Código Script, se consigue mover los ficheros a una ubicación de red o un dispositivo externo sabiendo que no se necesita un descompresor para su uso posterior. El código es como sigue:

 

 

Sub Main()

Dim fso,fldr,carpeta

carpeta = "C:\Temp\"

Set fldr = CreateObject("Scripting.FileSystemObject")

If fldr.folderexists(carpeta) then

Set fso = CreateObject("Scripting.FileSystemObject")

If fso.FileExists("@PAR(TARGET_FILE_PATH)\@PAR(TARGET_FILE_NAME)") Then

fso.CopyFile "@PAR(TARGET_FILE_PATH)\@PAR(TARGET_FILE_NAME)",carpeta

End If

End If

End Sub

 

 

En este ejemplo se determina un destino fijo, pero bien se puede definir un parámetro global o de proceso como valor de la variable carpeta.

Incluso podemos diseñar una variante donde el fichero nuevo tenga un nombre diferente, el cambio seria:

............................................

carpeta = "F:\Ventas\InfVentas_Copia_” & @PAR()CURRENT_MONTH_NAME[ESP]) & ” .xls"

Set fldr = CreateObject("Scripting.FileSystemObject")

If fldr. FileExists (carpeta) then

............................................

 

Article originally appeared on ApeSoft (http://blog.apesoft.es/).
See website for complete article licensing information.