Ir para o conteúdo

Descrever o componente Object do Jitterbit Connector SDK

Visão Geral

O componente Descrever Objeto pode ser utilizado sempre que um usuário precisar fornecer entrada para uma consulta. Apesar do nome, ele é projetado especificamente para obter parâmetros de busca ou consulta. Em muitas implementações, os valores padrão do componente serão suficientes. É necessário que um ou mais passos com um componente List Object o precedam:

Componente Descrever Objeto

Recursos do componente

O componente Descrever Objeto inclui comportamento embutido para buscar, atualizar, especificar e testar consultas:

  • Barra de busca: Os usuários podem digitar uma palavra-chave e filtrar os campos.
  • Atualizar: Clicar busca dados do conector e atualiza a lista de campos.
  • Triângulo de divulgação: Clicar colapsa e expande a lista de campos.
  • Selecionar Todos: Clicar seleciona e desmarca todos os campos.
  • Testar Consulta: Envia a consulta para o conector e mostra os dados retornados.
  • Paginação: Os usuários podem fornecer condições de Limite e/ou Deslocamento e clicar em Aplicar ou Remover para adicionar ou remover essas condições.
  • Condições: Operadores são fornecidos por padrão, com a opção de operadores adicionais especificados pelo desenvolvedor. Uma vez que um Objeto: Campo e Operador sejam selecionados e um Valor especificado, o usuário pode clicar em Adicionar ou usar Remover Todos para limpar os operadores. Veja Condições de Filtro para mais detalhes.
  • Condições de filtro: Se o tableMode para o componente for true, filtros podem ser adicionados usando um Componente de Tabela.

O resultado do componente é uma string de consulta que pode ser utilizada pelo conector.

Component JSON

{
    "name": "query:describe-object",
    "type": "pagination",
    "children": [
        {
            "name": "describe-object",
            "type": "describe-object",
            "use": {
                "ui": {
                    "pageTitle": "Build Your Query",
                    "description": "Fields To Retrieve",
                    "additionalOperators": [
                        {
                            "value": "IN ??",
                            "name": "In",
                            "description": "",
                            "type": "string",
                            "placeholder": "('value1', 'value2', ...)"
                        }
                    ],
                    "disableQuery": false,
                    "hideQuery": false,
                    "tableMode": true
                }
            },
            "widgetHint": "component:connector/describe-object",
            "validators": [
                {"name": "required"}
            ]
        }
    ]
}

No JSON que descreve o describe-object, estas propriedades podem ser configuradas:

  • type: O tipo do componente describe object deve ser "describe-object".
  • pageTitle: Texto opcional exibido acima do componente. Se não definido, o texto padrão Build Your Query é utilizado.
  • description: Texto opcional exibido acima da lista de campos. Se não definido, o texto padrão Fields to retrieve é utilizado.
  • additionalOperators: Array opcional de operadores a serem adicionados ao conjunto padrão de operadores. Veja Additional Operators para detalhes.
  • disableQuery: Se true (o padrão), a edição da string de consulta é desativada.
  • hideQuery: Se true, a string de consulta não é exibida. O padrão é false e a string de consulta é exibida.
  • tableMode: Se true, as condições de filtro são exibidas em uma tabela usando um Table component. O padrão é false e as condições são exibidas usando menus suspensos. Veja Filter Conditions para detalhes.

Add quotations to a condition

O componente pode ser configurado dinamicamente para usar aspas quando a string de consulta é criada.

Isso é implementado adicionando duas propriedades ao endpoint:

  • quoteValue: Um valor oculto nas propriedades do endpoint, a ser definido como o valor apropriado a ser utilizado ao delimitar as aspas. Normalmente, isso é definido como o caractere de aspas duplas ".
  • caseSensitive: Uma propriedade de caixa de seleção (booleano) nas propriedades do endpoint com um nome de exibição apropriado. Quando definido como true, o caractere quoteValue será utilizado para adicionar aspas aos parâmetros de uma consulta.

JSON de exemplo mostrando essas duas propriedades:

{
  "endpoint": {
    "name": "Example Connector",
    "displayName": "Example Connector Endpoint",
    "icon": "/assets/images/example.svg",
    "properties": [
      . . .
      {
        "name": "quoteValue",
        "hidden": true,
        "defaultValue": "\""
      },
      {
        "name": "caseSensitive",
        "displayName": "Use double quotations (\") for connector identifiers",
        "type": "boolean",
        "defaultValue": true,
        "validators": [
          {
            "name": "required"
          }
        ]
      },
      . . .

Quando o componente constrói a string de consulta, ele utiliza as configurações de quoteValue e caseSensitive ao construir a string de consulta.

Condições de filtro

Como parte da configuração padrão do componente, operadores para condições de filtro e funcionalidades para defini-las são fornecidos. Em muitos casos, isso será suficiente. Esses operadores padrão estão disponíveis para condições de filtro:

Nome Expressão Padrão
Igual = ??
Diferente != ??
Semelhante LIKE '??'
Começa Com LIKE '??%'
Termina Com LIKE '%??'
Contém LIKE '%??%'
Menor Que < ??
Menor ou Igual <= ??
Maior Que > ??
Maior ou Igual >= ??

Nessas expressões, ?? é substituído pelo valor à direita passado para o operador.

Além das personalizações disponíveis como parte do Component JSON, operadores adicionais podem ser criados e adicionados.

Operadores adicionais

Operadores adicionais podem ser definidos e adicionados ao adapter.json para aumentar a lista padrão de operadores. Para adicionar outro operador, adicione-o ao JSON usando mapeamentos conforme mostrado neste exemplo:

"additionalOperators": [
    {
        "value": "IN ??",
        "name": "In",
        "description": "",
        "type": "string",
        "placeholder": "('value1', 'value2', ...)"
    }
],

Onde:

  • value: O padrão a ser usado pelo operador ao formar a declaração de consulta. ?? será substituído por valores fornecidos pelo usuário.
  • name: O nome a ser exibido para o operador no menu Operador do Integration Studio.
  • description: Uma descrição do operador, a ser exibida na interface do usuário do Integration Studio ao passar o mouse como uma dica. Se estiver vazio, o name será usado como dica.
  • type: O tipo de valores (campos) que o operador aceita.
  • placeholder: Uma string de texto de espaço reservado que será substituída no campo value e o resultado exibido na interface do usuário do Integration Studio no campo Valor.

Se um operador não requer um valor à direita, você pode especificar rightOperandNotRequired como true para indicar que um valor não é necessário e fornecer um espaço reservado apropriado. Por exemplo:

"additionalOperators": [
    {
        "value": "IS NULL",
        "name": "Is Null",
        "description": "",
        "type": "string",
        "placeholder": "This operator does not require a value.",
        "rightOperandNotRequired": true
    }
],