Seletor de Dimensões (filtros)

Este documento descreve o mecanismo para o seletor de dimensões para os filtros.

Conceitos

O seletor de dimensões é um componente independente que terá de ser usado dentro de um webComponent.

Implementação

A configuração do seletor de dimensões recebe um serviço e respectivo caminho, como os seguintes exemplos:

master

propertyPath: "dimensionSet";
service: "sales/quotations/dimension/lookup/$model.id$"


Nota: o atributo selecionado para o propertyPath (no exemplo acima o dimensionSet), deve do tipo "Long Text", este atribuito deve ter o mesmo nome do "serviceviewfield".

No serviço enviámos os parâmetros para substituição no seguinte formato "$attribute$".

O serviço é tipo uma lookup que deve devolver uma array de items. Cada item tem as seguintes propriedades:

  • key (string): chave do segmento
  • placeholder (string): descrição/nome do segmento
  • length? (number): tamanho em caracteres para cada item do respectivo segmento
  • result (json): a lista lookup para aquele segmento

Exemplo do array:

[
  {
    "key": "paymentTerm",
    "placeholder": "Payment Term",
    "result": {
      "columns": [
        {
          "name": "ROW_NUMBER",
          "dataType": "Int64"
        },
        {
          "name": "Id",
          "dataType": "Guid"
        },
        {
          "name": "NaturalKey",
          "dataType": "String"
        },
        {
          "name": "Description",
          "dataType": "String"
        }
      ],
      "data": "[{\"ROW_NUMBER\":1,\"Id\":\"34a8eeac-9dfe-4ada-b46d-8776566dc5f4\",\"NaturalKey\":\"00\",\"Description\":\"Pronto Pagamento\"},...]",
      "count": 4,
      "aggregationData": null
    }
  },
  {
    "key": "deliveryTerm",
    "placeholder": "Delivery Term",
    "result": {
      "columns": [
        {
          "name": "ROW_NUMBER",
          "dataType": "Int64"
        },
        {
          "name": "Id",
          "dataType": "Guid"
        },
        {
          "name": "NaturalKey",
          "dataType": "String"
        },
        {
          "name": "Description",
          "dataType": "String"
        }
      ],
      "data": "[{\"ROW_NUMBER\":1,\"Id\":\"8eac60ce-664e-4209-9e0a-ce78a31bcc85\",\"NaturalKey\":\"CORREIO\",\"Description\":\"Correio\"},...]",
      "count": 4,
      "aggregationData": null
    }
  }
]


Quando o utilizador fizer uma pesquisa e selecionar um item esse item é adicionado ao selector de dimensões. As alterações são gravadas no draft.

Selector de dimensões (pesquisa)

Tooltip

Foi criada também uma toolip para o utilizador ter mais informações sobre as dimensões selecionadas. Esta é composta pelo nome e descrição do item e com o nome do respectivo segmento.

Selector de dimensões (ajuda)