Ir para o conteúdo

Variáveis locais

Variáveis locais no Jitterbit estão disponíveis apenas no script ou mapeamento de transformação atualmente em uso. Use uma variável local somente se a variável for necessária apenas temporariamente no script atual.

Nota

Não use uma variável local se quiser que a variável persista para uso em outras partes do seu projeto. Para uso fora do script atual, use uma variável global ou variável do projeto.

Crie uma Variável Local

Como uma variável local não pode ter um valor antes de ser definida, você deve defini-la antes de ser usada.

No sistema, uma variável local é reconhecida pela ausência do cifrão '\(' que normalmente precede o nome de uma variável global. Como o '\)' está ausente, uma variável local não é “vista” globalmente. Embora um elemento de dados global possa ser usado para passar um valor entre diferentes scripts, a variável local deixa de ser visível para o sistema após a execução do script que a utiliza.

Para definir e usar uma variável local, simplesmente omita o '$'. Uma variável local não pode ser definida ou recuperada com Set e Get funções.

Nomes de Variáveis

Os nomes das variáveis podem ser compostos a partir destes caracteres: letras (a-z, A-Z), números (0-9) e sublinhado. Outros caracteres não são permitidos e podem causar problemas. (Observe que no caso de variáveis locais, o caractere de ponto não é permitido.)

Exemplos

Neste exemplo, now é uma variável local e só está disponível neste script (ou seja, antes do término </trans> marcação). Em contraste, $tomorrow é uma variável global que está disponível até o final da cadeia de operação atual:

<trans>
now = Now();
WriteToOperationLog("The time is " + now);
$tomorrow = now + 60*60*24;
</trans>

Este exemplo recupera o valor de um nó e, se esse valor for nulo, define-o como a string "Not Set" e retorna o valor:

<trans>
value = root$transaction.request$body$Calculate$input.Operand1$;
if(IsNull(value),
    value = "Not Set"
  );
value
</trans>

Este exemplo recupera o valor de três nós, adiciona o maior dos dois primeiros valores ao terceiro valor e, em seguida, retorna o terceiro valor:

<trans>
value1 = root$transaction.request$body$Calculate$input.Operand1$;
value2 = root$transaction.request$body$Calculate$input.Operand2$;
value3 = root$transaction.request$body$Calculate$input.Operand3$;

if(value1 > value2,
    value3 += value1
 , //else
    value3 += value2
  );
value3
</trans>