Ir al contenido principal

Exportar activos y subirlos a la nube

Estructura

ExportAssetsAndUploadToCloud(sSQL, sEventFilter, sService, sFolder, sLocalArchiveFolder: Text; bOverwrite, bAllowAuth: Boolean): Text

Tipo

Función

Descripción

Esta función exportará todos los activos que coincidan con sSQL (la consulta SQL correspondiente a una cláusula WHERE en la tabla GAGES) y los subirá al servicio en la nube indicado en sService. Si se configura el parámetro sFolder, los archivos ZIP resultantes se subirán a esta carpeta en la nube (debe estar un nivel por encima del directorio raíz). Si sFolder está vacío, los archivos se subirán al directorio raíz. Si solo se desea un subconjunto de eventos, se puede especificar sEventFilter (SQL para una cláusula WHERE en las tablas EVENTS). sLocalArchiveFolder se puede configurar con un directorio local opcional en el que se copiarán los archivos ZIP antes de la subida. Marca la casilla «Sobrescribir» si deseas que, en caso de que el archivo ya exista en la nube con ese nombre, se elimine primero de la nube antes de subirlo. La función devolverá un resumen de las acciones completadas. Busca el texto «ERROR» para comprobar si se ha producido algún error durante la descarga o la importación. Al ejecutarse, si no existe ningún token para el servicio en la nube Y el parámetro bAuth es True, se mostrará la pantalla de inicio de sesión del servicio en una ventana del navegador. Este token se guardará para futuras sesiones.

Parámetros: 7

sSQL = consulta SQL para una cláusula WHERE en la tabla GAGES que seleccione todos los activos que deben exportarse. Esta consulta SQL NO debe comenzar con la palabra WHERE (IndySoft la añadirá automáticamente)

sEventFilter = Si solo desea exportar un subconjunto de eventos junto con los activos, introduzca aquí la consulta SQL para la cláusula WHERE de la tabla EVENTS. Esta consulta SQL NO debe comenzar con la palabra WHERE (IndySoft la añadirá automáticamente).

sService = el nombre del servicio en la nube. Los valores válidos son: «BOX» (box.com) y «DROPBOX» (dropbox.com)

sFolder = Carpeta en línea opcional a la que se deben subir los archivos. Esta carpeta debe estar situada un nivel por encima del directorio raíz. Si este parámetro está vacío, todos los archivos ZIP se subirán al directorio raíz del servicio en la nube.

sLocalArchiveFolder = Establezca este parámetro opcional con el nombre de un directorio local al que se deben copiar los archivos ZIP antes de la subida.

bOverwrite = Si el valor es TRUE y ya existe un archivo zip con el mismo nombre en la ubicación en la nube, este se eliminará antes de cargar el archivo zip más reciente.

bAllowAuth = Si no se encuentran los tokens guardados anteriormente en la base de datos o estos no permiten el acceso al servicio en línea, este parámetro determina si debe mostrarse una ventana del navegador para permitir la introducción de credenciales. Si se pretende ejecutar este script en una configuración automatizada o sin supervisión, este parámetro debe establecerse en «False».

Valor devuelto

Texto

Ejemplos

sService = "DROPBOX" sCompany = "TEST COMPANY"

sArchiveDirectory = "C:\Temp\Uploaded" & sCompany

if tdDoSQLRecords(1, "SELECT VARIABLE_DATE FROM COMPANY_VARS WHERE COMPANY = '" & sCompany &

"' AND VARIABLE_NAME = 'LAST EXPORT DATE'") then

dtCompanyLastExport = tdFieldByNameAsDateTime(1, "VARIABLE_DATE")

Else

dtCompanyLastExport = 0 RunSQL("INSERT INTO COMPANY_VARS (COMPANY, VARIABLE_NAME) VALUES ('" & sCompany & "', 'LAST EXPORT DATE')") End If

dtExport = Now

; sResult = ExportAssetsAndUploadToCloud("COMPANY = '" & sCompany & "' AND LAST_MODIFIED_DATE >= '" &

FormatDateTimeForSQL(dtCompanyLastExport) & "'", "(EVENTS.EVENT_DATE > '01/01/2013 12:00:00 AM')", sService,

sCompany, sArchiveDirectory, True, True)

DebugLog(sResult)

SendEMail("myemail@notreal.com", "", "", "Resultados de la exportación y la carga", "", "CLOUD", sResult, False, False)

si Pos("ERROR:", sResult) = 0 entonces

RunSQL("UPDATE COMPANY_VARS SET VARIABLE_DATE = '" & FormatDateTimeForSQL(dtExport) & "' WHERE COMPANY = '" &

sCompany & "' AND " & "VARIABLE_NAME = 'LAST EXPORT DATE'")

End If |