Saltar al contenido

Funciones de Salesforce en Jitterbit Design Studio

Las funciones de Salesforce proporcionan información de inicio de sesión y sesión, así como búsquedas para instancias de Salesforce. Tenga en cuenta que las dos funciones de DataLoader están en desuso, pueden ser eliminadas en el futuro y se recomiendan funciones de reemplazo.

FromDataLoaderDate

Declaración

date FromDataLoaderDate(string inputDate, string timeZoneId, bool isEuropeanFormat)

Sintaxis

FromDataLoaderDate(<inputDate>, <timeZoneId>, <isEuropeanFormat>)

Descripción

Convierte una fecha de entrada al formato requerido por Salesforce.

Advertencia

Este método ha sido desaprobado y puede ser eliminado en una versión futura de Jitterbit. Use la función GetUTCFormattedDate en su lugar.

FromDataLoaderDateTime

Declaración

date FromDataLoaderDateTime(string inputDate, string timeZoneId, bool isEuropeanFormat

Sintaxis

FromDataLoaderDateTime(<inputDate>, <timeZoneId>, <isEuropeanFormat>)

Descripción

Convierte una fecha y hora de entrada al formato requerido por Salesforce.

Advertencia

Este método ha sido desaprobado y puede ser eliminado en una versión futura de Jitterbit. Use la función GetUTCFormattedDateTime en su lugar.

GetSalesforceTimestamp

Declaración

string GetSalesforceTimestamp(string url, string sessionId[, string timeZoneId])

Sintaxis

GetSalesforceTimestamp(<url>, <sessionId>[, <timeZoneId>])

Parámetros requeridos

  • url: La URL que se utilizará al llamar a Salesforce, desde la llamada a SalesforceLogin
  • sessionId: El ID de sesión de Salesforce, desde la llamada a SalesforceLogin

Parámetros opcionales

  • timeZoneId: Un ID de zona horaria a utilizar, como se describe en Códigos de zona horaria. El valor predeterminado es la zona horaria de la organización de Salesforce identificada por el ID de sesión de Salesforce.

Descripción

Recupera la hora del sistema actual de Salesforce.

La marca de tiempo se devuelve en el formato yyyy-mm-dd HH:MM:SS, utilizando la configuración de zona horaria de su organización de Salesforce por defecto. Debe haber iniciado sesión en Salesforce utilizando la función SalesforceLogin antes de usar esta función. La función devuelve un valor nulo si la llamada falla. Utilice la función GetLastError para recuperar el mensaje de error en ese caso.

El tercer argumento opcional se puede utilizar para establecer la zona horaria a utilizar. Se utiliza la zona horaria de su organización de Salesforce por defecto si no se proporciona una zona horaria. El argumento de zona horaria debe ser una zona horaria reconocida por la clase TimeZone de Java.

En un escenario común, se llama primero a la función SalesforceLogin. La URL y el ID de sesión están disponibles en estas variables globales:

  • $Salesforce.ServerUrl
  • $Salesforce.SessionId

Como alternativa a esta función, consulte también la función LoginToSalesforceAndGetTimestamp.

Ejemplos

// Start by logging into Salesforce
if(!SalesforceLogin("..."), RaiseError(GetLastError()));
timestamp = GetSalesforceTimestamp($Salesforce.ServerUrl,
    $Salesforce.SessionId);
// Check for any errors before proceeding further
if(IsNull(timestamp), RaiseError(GetLastError()));

// Retrieving the timestamp in UTC:
timestamp = GetSalesforceTimestamp($Salesforce.ServerUrl,
    $Salesforce.SessionId, "UTC");

// Retrieving the timestamp in Pacific Standard Time:
timestamp = GetSalesforceTimestamp($Salesforce.ServerUrl,
    $Salesforce.SessionId, "PST");

LoginToSalesforceAndGetTimeStamp

Declaración

string LoginToSalesforceAndGetTimestamp(string salesforceOrg[, string timeZoneId])

Sintaxis

LoginToSalesforceAndGetTimestamp(<salesforceOrg>[, <timeZoneId>])

Parámetros requeridos

  • salesforceOrg: Una organización de Salesforce en el proyecto actual

Parámetros opcionales

  • timeZoneId: Un ID de zona horaria a utilizar, como se describe en Códigos de zona horaria. El valor predeterminado es la zona horaria de la organización de Salesforce.

Descripción

Inicia sesión en Salesforce utilizando una organización de Salesforce y recupera la hora del sistema actual desde Salesforce.

La organización de Salesforce utilizada en esta llamada a la función debe estar definida como una organización de Salesforce en el proyecto actual. Consulte las instrucciones sobre insertar elementos del proyecto.

La llamada de inicio de sesión se realiza utilizando las credenciales de la organización de Salesforce especificada. La marca de tiempo se devuelve en el formato yyyy-mm-dd HH:MM:SS, utilizando la configuración de zona horaria de su organización de Salesforce por defecto. La función devuelve un valor nulo si la llamada falla. Utilice la función GetLastError para recuperar el mensaje de error en ese caso.

El argumento opcional se puede utilizar para establecer la zona horaria a utilizar. La zona horaria de su organización de Salesforce se utiliza por defecto si no se proporciona una zona horaria. El argumento de zona horaria debe ser una zona horaria reconocida por la clase TimeZone de Java.

Una vez que se ha llamado a esta función, la URL de Salesforce y el ID de sesión están disponibles en estas variables globales:

  • $Salesforce.ServerUrl
  • $Salesforce.SessionId

Como alternativa a esta función, consulte también la función GetSalesforceTimestamp.

Ejemplos

// Logs into Salesforce and retrieves the timestamp
timestamp = LoginToSalesforceAndGetTimestamp("<TAG>Salesforce Orgs/...");

// Check for any errors before proceeding further
if(IsNull(timestamp), RaiseError(GetLastError()));

// Retrieving the timestamp in UTC:
timestamp = LoginToSalesforceAndGetTimestamp("<TAG>Salesforce Orgs/...",
    "UTC");

// Retrieving the timestamp in Pacific Standard Time:
timestamp = LoginToSalesforceAndGetTimestamp("<TAG>Salesforce Orgs/...",
    "PST");

SalesforceLogin

Declaración

bool SalesforceLogin(string salesforceOrg)

Sintaxis

SalesforceLogin(<salesforceOrg>)

Parámetros requeridos

  • salesforceOrg: Una organización de Salesforce en el proyecto actual

Descripción

Inicia sesión en Salesforce, utilizando la organización de Salesforce especificada.

La organización de Salesforce utilizada en esta llamada a la función debe estar definida como una organización de Salesforce en el proyecto actual. Consulte las instrucciones sobre inserción de elementos del proyecto.

Después de un inicio de sesión exitoso, estas variables globales se habrán establecido y se pueden usar en scripts o mapeos posteriores:

  • $Salesforce.SessionID: El ID de sesión de Salesforce
  • $Salesforce.ServerURL: La URL que se utilizará en llamadas posteriores a Salesforce en la misma sesión
  • $Salesforce.UserID: El ID del usuario de Salesforce

La función devuelve verdadero si el inicio de sesión fue exitoso y falso si el inicio de sesión falló. Utilice la función GetLastError para recuperar el mensaje de error en ese caso.

Nota

Los puntos finales creados con esta función se incluyen en informe de uso de puntos finales y cuentan para su licencia.

Ejemplos

// Logs into Salesforce
result = SalesforceLogin("<TAG>Salesforce Orgs/...</TAG>");

// Check for any errors before proceeding further
if(!result, RaiseError(GetLastError()));

SetSalesforceSession

Declaración

void SetSalesforceSession(string salesforceOrg, string sessionId, string serverURL)

Sintaxis

SetSalesforceSession(<salesforceOrg>, <sessionId>, <serverURL>)

Parámetros requeridos

  • salesforceOrg: Una organización de Salesforce en el proyecto actual
  • sessionID: Un ID de sesión de Salesforce
  • serverURL: Una URL de servidor de Salesforce

Descripción

Establece la información de sesión de Salesforce para la organización de Salesforce especificada. Utilice esta función si tiene un ID de sesión de Salesforce y una URL de servidor existentes. Llamar a esta función desactivará el inicio de sesión automático de Salesforce y en su lugar utilizará la información de sesión proporcionada.

La organización de Salesforce utilizada en esta llamada a función debe estar definida como una organización de Salesforce en el proyecto actual. Consulte las instrucciones sobre inserción de elementos del proyecto.

Después de una llamada a función exitosa, estas variables globales se habrán establecido y se pueden usar en scripts o mapeos posteriores:

  • $Salesforce.SessionID: El ID de sesión de Salesforce.
  • $Salesforce.ServerURL: La URL que se utilizará en llamadas posteriores a Salesforce en la misma sesión.

Esta función no valida la entrada; solo falla si el ID de sesión o la URL del servidor están vacíos o si la organización de Salesforce referenciada no existe. Si el ID de sesión o la URL del servidor son inválidos, las operaciones posteriores de Salesforce fallarán.

Utilice la función Eval para capturar errores, llamando a la función GetLastError para recuperar el mensaje de error.

Advertencia

Es un problema conocido que la función SetSalesforceSession no funciona correctamente y no debe ser utilizada. Si se utiliza, el script puede o no generar un error. Incluso si el script no genera un error, la función no funcionará correctamente. Dado que la función no funciona, se utilizará el manejo de sesión incorporado del conector de Salesforce.

Ejemplos

// Sets the Salesforce session information
sfOrg = "<TAG>Salesforce Orgs/first.last@example.com</TAG>";
sfSessionID = "00D5...SE";
sfURL = "https://example.my.salesforce.com/services/Soap/u/39.0/...";
// Logs into Salesforce
Eval(SetSalesforceSession(sfOrg, sfSessionID, sfURL),
    RaiseError("Failed to set Salesforce session: " + GetLastError()));

SfCacheLookup

Declaración

string SfCacheLookup(string salesforceOrg, string soql)

Sintaxis

SfCacheLookup(<salesforceOrg>, <soql>)

Parámetros requeridos

  • salesforceOrg: Una organización de Salesforce en el proyecto actual
  • soql: Una consulta escrita en Salesforce Object Query Language (SOQL)

Descripción

Inicia sesión en Salesforce (si es necesario) y recupera el resultado de la consulta de Salesforce. Solo se devuelve el valor del primer campo del primer registro.

Los valores se almacenan en caché para que las llamadas posteriores con los mismos parámetros exactos (Org de Salesforce y SOQL) no desencadenen una llamada a Salesforce. Salesforce se llama solo la primera vez. La caché es válida durante la duración de la cadena de operación en la que se llama.

La función devuelve null si el inicio de sesión falla, la consulta no devuelve registros o la API falla. Utiliza la función GetLastError para recuperar el mensaje de error en ese caso.

Ejemplos

// Logs into Salesforce and retrieves the first result of a query
// If the query is cached, it uses the cached value
myId = SFCacheLookup("<TAG>Salesforce Orgs/...</TAG>",
    "SELECT Id FROM Account WHERE Name='My Account'");

// Checks for any errors before proceeding
if(IsNull(myId), RaiseError(GetLastError()));

SfLookup

Declaración

string SfLookup(string salesforceOrg, string soql)

Sintaxis

SfLookup(<salesforceOrg>, <soql>)

Parámetros requeridos

  • salesforceOrg: Un Org de Salesforce en el proyecto actual
  • soql: Una consulta escrita en Salesforce Object Query Language (SOQL)

Descripción

Inicia sesión en Salesforce (si es necesario) y recupera el resultado de la consulta de Salesforce. Solo se devuelve el valor del primer campo del primer registro.

La función devuelve null si el inicio de sesión falla, la consulta no devuelve registros o la API falla. Utiliza la función GetLastError para recuperar el mensaje de error en ese caso.

Consulta también las funciones SFLookupAll y SFLookupAllToFile.

Ejemplos

// Logs into Salesforce and retrieves the first result of a query
myId = SFLookup("<TAG>Salesforce Orgs/...</TAG>",
    "SELECT Id FROM Account WHERE Name='My Account'");

// Checks for any errors before proceeding
if(IsNull(myId), RaiseError(GetLastError()));

SfLookupAll

Declaración

array_2D SfLookupAll(string salesforceOrg, string soql)

Sintaxis

SfLookupAll(<salesforceOrg>, <soql>)

Parámetros requeridos

  • salesforceOrg: Un Org de Salesforce en el proyecto actual
  • soql: Una consulta escrita en Salesforce Object Query Language (SOQL)

Descripción

Inicia sesión en Salesforce (si es necesario) y recupera el resultado de la consulta de Salesforce. El array devuelto es bidimensional; un array de registros, con cada registro siendo un array de campos nombrados.

La función devuelve null si la sesión falla, la consulta no devuelve registros, o la API falla. Utiliza la función GetLastError para recuperar el mensaje de error en ese caso.

Existen limitaciones si se utiliza una consulta de relación:

  • Solo se puede recuperar la relación inmediata. La consulta no puede incluir una relación de nieto.
  • Para cada registro de consulta, cada hijo no puede tener múltiples registros.
  • En la declaración de la consulta, los campos bajo el mismo hijo deben agruparse juntos.

Consulta también las funciones SFLookup y SFLookupAllToFile.

Ejemplos

Ejemplo 1
// Logs into Salesforce and retrieves the results of a query
records = SFLookupAll("<TAG>Salesforce Orgs/...</TAG>",
    "SELECT Id,Name FROM Account");
firstId = records[0][0];
firstAccountName = records[0]["name"];
Ejemplo 2
// Logs into Salesforce and retrieves the results of a query
soql = "SELECT Id,Name,CreatedBy.ContactId,
    CreatedBy.FirstName,CreatedBy.LastName FROM Account";
rs = SfLookupAll("<TAG>Salesforce Orgs/...</TAG>", soql);
firstId = rs[0][0];
firstAccountName = rs[0]["name"];
lastName = rs[0]["CreatedBy.LastName"];
// or using an index:
last_name = rs[0][5];

SfLookupAllToFile

Declaración

int SfLookupAllToFile(string salesforceOrg, string soql, string targetId)

Sintaxis

SfLookupAllToFile(<salesforceOrg>, <soql>, <targetId>)

Parámetros requeridos

  • salesforceOrg: Una organización de Salesforce en el proyecto actual
  • soql: Una consulta escrita en el Lenguaje de Consulta de Objetos de Salesforce (SOQL)
  • targetID: Objetivo de tipo archivo en el proyecto actual

Descripción

Inicia sesión en Salesforce (si es necesario) y escribe los resultados de la consulta de Salesforce en un archivo CSV. La función devuelve el número de registros recuperados.

La llamada de inicio de sesión se realiza utilizando las credenciales en la organización de Salesforce especificada.

El objetivo de tipo archivo utilizado en esta llamada de función debe estar definido como un objetivo en el proyecto actual. Consulta las instrucciones sobre insertar elementos del proyecto.

La función devuelve null si el inicio de sesión falla, la consulta no devuelve registros o la API falla. Utiliza la función GetLastError para recuperar el mensaje de error en ese caso.

Consulta también las funciones SFLookup y SFLookupAll.

Ejemplos

Ejemplo 1
// Logs into Salesforce,
// retrieves the results of a query,
// and writes the results to a target
nrec = SFLookupAllToFile("<TAG>Salesforce Orgs/...</TAG>",
    "SELECT Id,Name FROM Account",
    "<TAG>Targets/...</TAG>");
Ejemplo 2
// Logs into Salesforce,
// retrieves the results of a query
// specified in a local variable,
// and writes the results to a target
soql = "SELECT Id,Name,CreatedBy.ContactId,
    CreatedBy.FirstName,CreatedBy.LastName FROM Account";
nrec = SfLookupAllToFile("<TAG>Salesforce Orgs/...</TAG>",
    soql, "<TAG>Targets/...</TAG>");