EasyproProdutoMedida
Documentacao Tecnica
| Nome do cliente | OSKLEN |
| Nome do projeto | Integracao LINX - EasyPro |
| Biblioteca | wosk_easypro_produto_medida |
| Data | 30/03/2026 |
Historico de Versoes
| Data | Versao | Modificado por | Descricao da Mudanca |
| 30/03/2026 | 1.0 | Maykon/Gustavo | Criacao da documentacao tecnica do servico de tabela de medidas de produto EasyPro. |
Descricao
Este servico de tabela de medidas disponibiliza a consulta de produtos e suas medidas tecnicas no EasyPro.
O processo valida filtros de entrada, monta a lista de itens de medida por produto e retorna o resultado consolidado em JSON.
Endpoint (API)
O endpoint recebe parametros para consulta de produtos com tabela de medidas. A consulta pode ser executada por data de cadastramento ou por codigo de produto, com paginacao opcional por limite e deslocamento.
- Chamada:
Requisicao HTTP - Recurso:
/bibliotecas/a30bc99d-3c43-4810-be03-a705b02ea115/wosk_easypro_produto_medida - Metodo HTTP:
GET
Estruturacao de Dados
| Campo | Tipo | Obrigatorio | Descricao |
key |
string | Sim | Chave de autenticacao da requisicao. |
DATA_CADASTRAMENTO |
datetime | Condicional | Obrigatorio quando PRODUTO nao for informado. |
PRODUTO |
string | Nao | Codigo do produto para consulta direta. |
OFFSET |
number | Condicional | Obrigatorio quando LIMIT for informado. |
LIMIT |
number | Nao | Quantidade maxima de linhas retornadas. |
| Campo | Tipo | Obrigatorio | Descricao |
CODIGO_MEDIDAS |
string | Sim | Codigo da medida vinculada ao produto. |
MEDIDA |
string | Sim | Descricao da medida. |
TAMANHO_BASE |
string | Sim | Tamanho base da grade. |
PORC_TOLERANCIA |
number | Sim | Percentual de tolerancia da medida. |
M1, M2, M3, M4, M5, M6, M7, M8, M9, M10, M11, M12, M13 |
number | Sim | Valores numericos de medidas por posicao da tabela. |
Exemplo de payload enviado para o endpoint (JSON):
{
"key": "<API_KEY>",
"DATA_CADASTRAMENTO": "<YYYY-MM-DD HH:MM:SS>",
"PRODUTO": "<PRODUTO>",
"OFFSET": <OFFSET>,
"LIMIT": <LIMIT>
}
Estrutura da mensagem de resposta (GET)
Exemplo de resposta do endpoint (GET):
{
"ROWS": [
{
"PRODUTO": "12345",
"DESC_PRODUTO": "CAMISETA BASICA",
"CODIGO_GRUPO": "01",
"GRUPO_PRODUTO": "VESTUARIO",
"CODIGO_SUB_GRUPO": "0101",
"SUBGRUPO_PRODUTO": "CAMISETAS",
"GRADE": "ADULTO",
"CODIGO_TABELA_MEDIDAS": "TB001",
"DATA_CADASTRAMENTO": "2026-03-30 00:00:00",
"ITENS": [
{
"CODIGO_MEDIDAS": "01",
"MEDIDA": "BUSTO",
"TAMANHO_BASE": "M",
"PORC_TOLERANCIA": 2.5000,
"M1": 48.0000,
"M2": 50.0000,
"M3": 52.0000,
"M4": 54.0000,
"M5": 56.0000,
"M6": 58.0000,
"M7": 60.0000,
"M8": 62.0000,
"M9": 64.0000,
"M10": 66.0000,
"M11": 68.0000,
"M12": 70.0000,
"M13": 72.0000
}
]
}
],
"TOTAL": 1
}
Operação de Dados
Leitura principal: a consulta base usa SELECT DISTINCT na view W_ISNAPP_EASYPRO_TABELA_MEDIDAS para retornar dados gerais do produto e referencia da tabela de medidas, com filtros dinamicos de DATA_CADASTRAMENTO e PRODUTO.
SELECT DISTINCT PRODUTO, DESC_PRODUTO, CODIGO_GRUPO, GRUPO_PRODUTO, CODIGO_SUB_GRUPO, SUBGRUPO_PRODUTO, GRADE, CODIGO_TABELA_MEDIDAS, DATA_CADASTRAMENTO FROM W_ISNAPP_EASYPRO_TABELA_MEDIDAS
Leitura complementar de medidas: para cada PRODUTO retornado na consulta principal, o servico executa busca adicional na mesma view para montar o array ITENS e remove PRODUTO da subestrutura interna.
SELECT
PRODUTO,
CODIGO_MEDIDAS, MEDIDA, TAMANHO_BASE, PORC_TOLERANCIA, M1, M2, M3, M4, M5, M6, M7, M8, M9, M10, M11, M12, M13
FROM W_ISNAPP_EASYPRO_TABELA_MEDIDAS
WHERE PRODUTO = '<PRODUTO>'
Transformacao de dados: PORC_TOLERANCIA, M1, M2, M3, M4, M5, M6, M7, M8, M9, M10, M11, M12, M13 sao normalizados com setNumeric antes da serializacao da resposta.
Tratamento de dados
Montagem da consulta principal:
LIMITeOFFSETsao convertidos para inteiro por cast explicito antes de compor a clausula de paginacaoOFFSET ... FETCH NEXT ....- Na montagem dos filtros com bind, os valores sao enviados como
string; quando o valor forNULL(), ocorre conversao paranullantes do bind.
Pos-leitura de dados (consulta complementar de ITENS):
PORC_TOLERANCIA, M1, M2, M3, M4, M5, M6, M7, M8, M9, M10, M11, M12, M13: normalizados comsetNumeric(...)para padronizacao numerica antes da serializacao do retorno.- O campo
PRODUTOe removido da subestrutura deITENScomunset($r['PRODUTO'])para evitar redundancia, mantendo o codigo do produto apenas no nivel principal do registro retornado.
Montagem da resposta final:
- Para cada registro principal, o array
ITENSe acoplado ao registro de produto, consolidando dados gerais e medidas detalhadas em uma unica estrutura JSON. - O contador
TOTALe incrementado por registro efetivamente serializado emROWS, garantindo consistencia entre volume retornado e metadado de totalizacao.
Integracao
- Processamento:
Consulta no banco LINX/EasyPro - Tabelas:
W_ISNAPP_EASYPRO_TABELA_MEDIDAS
Tratamento de retorno
Sucesso: retorna JSON com ROWS, TOTAL, Mensagem = OK e Mensagem Detalhada = Listagem Efetuada.
Erro: validacao de parametros e metodos nao implementados retornam excecao com detalhe do problema.
Fluxo do Processo
Criterios de Aceitacao
| Processo | Subprocesso | Descricao | Situacao esperada |
| Endpoint (API) | Consulta por data | Ao enviar GET sem PRODUTO, o servico deve exigir DATA_CADASTRAMENTO e aplicar filtro pela data informada. |
Resposta restrita aos produtos cadastrados na data solicitada. |
| Endpoint (API) | Consulta por produto | Ao enviar GET com PRODUTO, o servico deve montar o array ITENS com as medidas detalhadas do produto. |
Resposta contendo dados gerais do produto e subestrutura ITENS com medidas numericas normalizadas. |
| Endpoint (API) | Paginacao | Ao informar LIMIT, o servico deve exigir OFFSET e aplicar ordenacao por PRODUTO com OFFSET/FETCH. |
Consulta paginada sem quebra de contrato de entrada. |
Situacoes consideradas
| Valor | Significado |
GET |
Executa consulta de tabela de medidas de produto. |
LIMIT + OFFSET |
Ativa paginacao ordenada por produto. |
Mensagem = OK |
Indica listagem concluida com sucesso. |

Nenhum comentário