Ir para o conteúdo

Funções do Salesforce

As funções do Salesforce fornecem informações de login e sessão e pesquisas para instâncias do Salesforce. Observe que as duas funções do DataLoader estão obsoletas, podem ser removidas no futuro e as funções de substituição são recomendadas.

FromDataLoaderDate

Declaração

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

Sintaxe

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

Descrição

Converte uma data de entrada no formato exigido pelo Salesforce.

Aviso

Este método foi obsoleto e pode ser removido em uma versão futura do Jitterbit. Use o GetUTCFormattedDate função em vez disso.

FromDataLoaderDateTime

Declaração

date FromDataLoaderDateTime(string inputDate, string timeZoneId, bool isEuropeanFormat

Sintaxe

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

Descrição

Converte um DateTime de entrada no formato exigido pelo Salesforce.

Aviso

Este método foi obsoleto e pode ser removido em uma versão futura do Jitterbit. Use o GetUTCFormattedDateTime função em vez disso.

GetSalesforceTimestamp

Declaração

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

Sintaxe

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

Parâmetros Necessários

  • url: A URL a ser usada ao chamar o Salesforce, da chamada SalesforceLogin
  • sessionId: O ID da sessão do Salesforce, desde a chamada SalesforceLogin

Parâmetros Opcionais

  • timeZoneId: Um ID de fuso horário a ser usado, conforme descrito em Códigos de fuso horário. O padrão é o fuso horário da organização do Salesforce identificada pelo ID da sessão do Salesforce.

Descrição

Recupera a hora atual do sistema do Salesforce.

O timestamp é retornado no formato yyyy-mm-dd HH:MM:SS, usando a configuração de fuso horário da sua organização Salesforce por padrão. Você deve ter feito login no Salesforce usando o SalesforceLogin função antes de usar esta função. A função retorna um valor nulo se a chamada falhar. Use o GetLastError função para recuperar a mensagem de erro nesse caso.

O terceiro argumento opcional pode ser usado para definir o fuso horário a ser usado. O fuso horário de sua organização do Salesforce é usado por padrão se um fuso horário não for fornecido. O argumento de fuso horário deve ser um fuso horário reconhecido pela classe TimeZone.

Em um cenário comum, o SalesforceLogin função é chamada primeiro. A URL e o ID da sessão ficam então disponíveis nestas variáveis globais:

  • $Salesforce.ServerUrl
  • $Salesforce.SessionId

Como alternativa a esta função, consulte também o LoginToSalesforceAndGetTimestamp função.

Exemplos

// 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

Declaração

string LoginToSalesforceAndGetTimestamp(string salesforceOrg[, string timeZoneId])

Sintaxe

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

Parâmetros Necessários

  • salesforceOrg: Uma Salesforce Org no projeto atual

Parâmetros Opcionais

  • timeZoneId: Um ID de fuso horário a ser usado, conforme descrito em Códigos de fuso horário. O padrão é o fuso horário da organização do Salesforce.

Descrição

Faz login no Salesforce usando uma Salesforce Org e recupera a hora atual do sistema do Salesforce.

A Salesforce Org usada nesta chamada de função deve ser definida como uma Salesforce Org no projeto atual. Veja as instruções em inserindo itens de projeto.

A chamada de login é feita usando as credenciais no Salesforce Org especificado. O timestamp é retornado no formato yyyy-mm-dd HH:MM:SS, usando a configuração de fuso horário da sua organização Salesforce por padrão. A função retorna um valor nulo se a chamada falhar. Use o GetLastError função para recuperar a mensagem de erro nesse caso.

O argumento opcional pode ser usado para definir o fuso horário a ser usado. O fuso horário de sua organização do Salesforce é usado por padrão se um fuso horário não for fornecido. O argumento de fuso horário deve ser um fuso horário reconhecido pela classe TimeZone.

Depois que essa função for chamada, a URL do Salesforce e a ID da sessão estarão disponíveis nestas variáveis globais:

  • $Salesforce.ServerUrl
  • $Salesforce.SessionId

Como alternativa a esta função, consulte também o GetSalesforceTimestamp função.

Exemplos

// 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

Declaração

bool SalesforceLogin(string salesforceOrg)

Sintaxe

SalesforceLogin(<salesforceOrg>)

Parâmetros Necessários

  • salesforceOrg: Uma organização do Salesforce no projeto atual

Descrição

Faz login no Salesforce, usando o Salesforce Org especificado.

A Salesforce Org usada nesta chamada de função deve ser definida como uma Salesforce Org no projeto atual. Veja as instruções em inserindo itens de projeto.

Após um login bem-sucedido, essas variáveis globais serão definidas e poderão ser usadas em scripts ou mapeamentos subsequentes:

  • $Salesforce.SessionID: A ID da sessão do Salesforce
  • $Salesforce.ServerURL: a URL a ser usada em chamadas subsequentes para o Salesforce na mesma sessão
  • $Salesforce.UserID: A ID do usuário do Salesforce

A função retorna true se o login foi bem-sucedido e false se o login falhou. Use o GetLastError função para recuperar a mensagem de erro nesse caso.

Exemplos

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

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

SetSalesforceSession

Declaração

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

Sintaxe

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

Parâmetros Necessários

  • salesforceOrg: Uma Salesforce Org no projeto atual
  • sessionID: Um ID de sessão do Salesforce
  • serverURL: Um URL do servidor Salesforce

Descrição

Define as informações da sessão do Salesforce para a organização do Salesforce especificada. Use esta função se você tiver um ID de sessão do Salesforce e um URL de servidor existentes. Chamar essa função desativará o login automático do Salesforce e, em vez disso, usará as informações da sessão fornecidas.

A Salesforce Org usada nesta chamada de função deve ser definida como uma Salesforce Org no projeto atual. Veja as instruções em inserindo itens de projeto.

Após uma chamada de função bem-sucedida, essas variáveis globais serão definidas e poderão ser usadas em scripts ou mapeamentos subsequentes:

  • $Salesforce.SessionID: a ID da sessão do Salesforce.
  • $Salesforce.ServerURL: a URL a ser usada em chamadas subsequentes para o Salesforce na mesma sessão.

Esta função não valida a entrada; ele só falha se o ID da sessão ou o URL do servidor estiverem vazios ou se a organização do Salesforce referenciada não existir. Se a ID da sessão ou a URL do servidor for inválida, as operações subsequentes do Salesforce falharão.

Use o Eval função para detectar erros, chamando o GetLastError função para recuperar a mensagem de erro.

Aviso

É um problema conhecido que o SetSalesforceSession função não funciona corretamente e não deve ser usada. Se usado, o script pode ou não gerar um erro. Mesmo que o script não gere erro, a função não funcionará corretamente. Como a função não funciona, será usada a manipulação de sessão integrada do conector Salesforce.

Exemplos

// 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

Declaração

string SfCacheLookup(string salesforceOrg, string soql)

Sintaxe

SfCacheLookup(<salesforceOrg>, <soql>)

Parâmetros Necessários

  • salesforceOrg: Uma Salesforce Org no projeto atual
  • soql: Uma consultar escrita em Salesforce Object Query Language (SOQL)

Descrição

Faz login no Salesforce (se necessário) e recupera o resultado da consultar do Salesforce. Apenas o valor do primeiro campo do primeiro registro é retornado.

Os valores são armazenados em cache para que chamadas subsequentes com os mesmos parâmetros exatos (Salesforce Org e SOQL) não acionem uma chamada para Salesforce. O Salesforce é chamado apenas na primeira vez.

A função retorna null se o login falhar, a consultar não retornará nenhum registro ou a API falhará. Use o GetLastError função para recuperar a mensagem de erro nesse caso.

Exemplos

// 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

Declaração

string SfLookup(string salesforceOrg, string soql)

Sintaxe

SfLookup(<salesforceOrg>, <soql>)

Parâmetros Necessários

  • salesforceOrg: Uma Salesforce Org no projeto atual
  • soql: Uma consultar escrita em Salesforce Object Query Language (SOQL)

Descrição

Faz login no Salesforce (se necessário) e recupera o resultado da consultar do Salesforce. Apenas o valor do primeiro campo do primeiro registro é retornado.

A função retorna null se o login falhar, a consultar não retornará nenhum registro ou a API falhará. Use o GetLastError função para recuperar a mensagem de erro nesse caso.

Veja também o SFLookupAll e SFLookupAllToFile funções.

Exemplos

// 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

Declaração

array_2D SfLookupAll(string salesforceOrg, string soql)

Sintaxe

SfLookupAll(<salesforceOrg>, <soql>)

Parâmetros Necessários

  • salesforceOrg: Uma Salesforce Org no projeto atual
  • soql: Uma consultar escrita em Salesforce Object Query Language (SOQL)

Descrição

Faz login no Salesforce (se necessário) e recupera o resultado da consultar do Salesforce. A matriz retornada é bidimensional; uma matriz de registros, com cada registro uma matriz de campos nomeados.

A função retorna null se o login falhar, a consultar não retornará nenhum registro ou a API falhará. Use o GetLastError função para recuperar a mensagem de erro nesse caso.

Existem limitações se uma consultar de relacionamento for usada:

  • Somente relacionamento imediato pode ser recuperado. A consultar não pode incluir um relacionamento neto.
  • Para cada registro de consultar, cada filho não pode ter vários registros.
  • Na declaração de consultar, os campos sob o mesmo filho devem ser agrupados.

Veja também o SFLookup e SFLookupAllToFile funções.

Exemplos

Example 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"];
Example 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

Declaração

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

Sintaxe

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

Parâmetros Necessários

  • salesforceOrg: Uma Salesforce Org no projeto atual
  • soql: Uma consultar escrita em Salesforce Object Query Language (SOQL)
  • targetID: Destino do tipo de arquivo no projeto atual

Descrição

Faz login no Salesforce (se necessário) e grava os resultados do Salesforce da consultar em um arquivo CSV. A função retorna o número de registros recuperados.

A chamada de login é feita usando as credenciais no Salesforce Org especificado.

O destino do tipo de arquivo usado nesta chamada de função deve ser definido como um destino no projeto atual. Veja as instruções em inserindo itens de projeto.

A função retorna null se o login falhar, a consultar não retornará nenhum registro ou a API falhará. Use o GetLastError função para recuperar a mensagem de erro nesse caso.

Veja também o SFLookupe SFLookupAll funções.

Exemplos

Example 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>");
Example 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>");