Capítulo VI - Associação de produtos e grupos

Associar produtos em um ou mais grupos de produtos. Esta API também criará o grupo de produtos indicado na chamada de associação, caso ele ainda não exista.

Criamos um video para exemplificar os conceitos descritos neste tópico. Sugerimos que, após a leitura, assista este vídeo para melhor compreensão.

Conceito

Este recurso é utilizado para limitar a produção de regras para um determinado cenário de forma que a Systax gere para o cliente apenas as regras que, de fato, ele utilizará, evitando o esforço e o custo do recebimento de dados desnecessários.

Em regra, nem todos os produtos do cliente são movimentados em todas as operações (geralmente isso ocorre nas compras), assim esse recurso permite a relação “N-N” entre produtos e cenários. Vejamos o exemplo abaixo de um cliente com 1.000 produtos cadastrados:

Cenários

Grupo de produtos

nº regras a receber da Systax

Compra SP-SP

Comprados de SP

997

Compra RJ-SP

Comprados de RJ

3

Compra AM-SP

Comprados de AM

2

Venda SP-SP

-

1000

Internamente, o sistema terá a lista de produtos que compõem cada grupo (ex.: Comprados do AM: produtos “E” e “F”) e, sempre que um cenário estiver com um grupo associado (ex.: o Grupo de Produtos “Comprados do AM” estará associado ao cenário “Compra AM-SP”), somente serão geradas regras para os produtos movimentados nesta operação (ex.: para o cenário “Compra AM-SP” serão geradas regras apenas para os produtos “E” e “F”).

Descrição dos campos de entrada

Campo

PAI

Descrição

cod_interno

products_groups

ID do produto (Cliente)

origem_produto

products_groups

Origem do produto

descricao

grupos

Descrição do grupo de produtos

Descrição dos campos de retorno

Campo

PAI

Descrição

success

/

Status do retorno

message

/

Mensagem do retorno

itens

/

Quantidade de itens na chamada

itens_ok

/

Quantidade de itens encontrados (existentes)

position

assocs_ok

Posição do item na chamada

cod_interno

assocs_ok

ID do produto (Cliente)

origem_produto

assocs_ok

Origem do produto

descricao

grupos

Descrição do grupo

msg

grupos

Mensagem de retorno referente a associação

itens_error

/

Quantidade de itens 

 

Tabela de referência para o campo "success" e "message"

Código de retorno

sucess

message

200

true

OK

400

false
false

token_invalid
token_expired

500

false

internal_error

 

Tabela de referência para o campo "msg"

msg

Descrição

assoc_ok

Associação realizada com sucesso

assoc_already_exists

Associação já existente

Exemplos de chamada e retorno

 

Chamada

{
  "products_groups": [
    {
      "cod_interno": "Produto 02",
      "origem_produto": 0,
      "grupos": [
        {
          "descricao": "GRUPO 1"
        },
                {
          "descricao": "GRUPO 3"
        }
      ]
    },
         {
      "cod_interno": "Produto 03",
      "origem_produto": 0,
      "grupos": [
        {
          "descricao": "GRUPO 1"
        },
                {
          "descricao": "GRUPO 3"
        }
      ]
    }
  ]
}

Retorno

{
  "success": true,
  "message": "ok",
  "itens": 2,
  "itens_ok": 2,
  "assocs_ok": [
    {
      "position": 0,
      "cod_interno": "Produto 02",
      "origem_produto": 0,
      "grupos": [
        {
          "descricao": "GRUPO 1",
          "msg": "assoc_ok"
        },
        {
          "descricao": "GRUPO 3",
          "msg": "assoc_ok"
        }
      ]
    },
    {
      "position": 1,
      "cod_interno": "Produto 03",
      "origem_produto": 0,
      "grupos": [
        {
          "descricao": "GRUPO 1",
          "msg": "assoc_ok"
        },
        {
          "descricao": "GRUPO 3",
          "msg": "assoc_ok"
        }
      ]
    }
  ],
  "itens_error": 0,
  "assocs_error": []
}