Sumário

Search

  1. Prefácio
  2. Trabalhando com Transformações
  3. Transformação Agregador
  4. Transformação Personalizada
  5. Funções de Transformação Personalizada
  6. Transformação Mascaramento de Dados
  7. Exemplos de Mascaramento de Dados
  8. Transformação Expressão
  9. Transformação Procedimento Externo
  10. Transformação Filtros
  11. Transformação HTTP
  12. Transformação de Resolução de Identidade
  13. Transformação Java
  14. Referência da API da transformação Java
  15. Expressões Java
  16. Exemplo de Transformação Java
  17. Transformação Joiner
  18. Transformação Pesquisa
  19. Caches de Pesquisa
  20. Cache de Pesquisa Dinâmica
  21. Transformação Normalizador
  22. Transformação Classificação
  23. Transformação Roteador
  24. Transformação de Gerador de Sequência
  25. Transformação Classificador
  26. Transformação de Qualificador de Origem
  27. Transformação SQL
  28. Usando a Transformação SQL em um Mapeamento
  29. Transformação Procedimento Armazenado
  30. Transformação Controle de Transações
  31. Transformação União
  32. Transformação Dados Não Estruturados
  33. Transformação Estratégia de Atualização
  34. Transformações XML

Guia de Transformações

Guia de Transformações

Exemplo de Interface Avançada

Exemplo de Interface Avançada

Você pode usar a interface avançada para criar e invocar uma expressão de pesquisa em uma transformação Java.
O exemplo de código Java a seguir mostra como criar uma função que chama uma expressão e como invocar a expressão para obter o valor de retorno. Este exemplo transfere os valores de duas portas de entrada com um tipo de dados String, NAME e COMPANY à função myLookup. A função myLookup usa uma expressão de pesquisa para pesquisar o valor da porta de saída ADDRESS.
Este exemplo parte do pressuposto de que você tem uma transformação de pesquisa não conectada no mapeamento chamada LKP_addresslookup.
Use o seguinte código Java na guia
Código Auxiliar
do Transformation Developer
:
JExpression addressLookup() throws SDKException {      JExprParamMetadata params[] = new JExprParamMetadata[2];      params[0] = new JExprParamMetadata (                      EDataType.STRING, // data type                      50,                   // precision                      0                     // scale                      );      params[1] = new JExprParamMetadata (                      EDataType.STRING,     // data type                      50,                   // precision                      0                     // scale                      );      return defineJExpression(":LKP.LKP_addresslookup(X1,X2)",params); } JExpression lookup = null; boolean isJExprObjCreated = false;
Use o seguinte código Java na guia
Na Linha de Entrada
para invocar a expressão e retornar o valor da porta ADDRESS:
... if(!iisJExprObjCreated) {     lookup = addressLookup();     isJExprObjCreated = true; } lookup = addressLookup(); lookup.invoke(new Object [] {NAME,COMPANY}, ERowType.INSERT); EDataType addressDataType = lookup.getResultDataType(); if(addressDataType == EDataType.STRING) {     ADDRESS = (lookup.getStringBuffer()).toString(); } else {     logError("Expression result datatype is incorrect."); } ...