Configure dependências entre campos adicionais
Detalhes da petição
- URL base: {host}/ASMSAPI/
- Uri: /api/v9/additionalsfields/dependents/load
- Tipo: POST
-
Títulos obrigatórios:
- tipo de conteúdo: application/json
- Autorização X: Portador {token}
Descrição do URL
- {host}: Ele representa o domínio do ambiente no qual a API está localizada.
- ASMSAPI/: Prefixo de API fixo.
- URI: Ponto de extremidade específico para a solicitação.
⚐ URL DE EXEMPLO:
https://{host}/ASMSAPI/api/v9/additionalsfields/dependents/load
Parâmetros do Corpo do Pedido
| Nome | Tipo de dado | Obrigatório | Descrição |
|---|---|---|---|
| Dependências | Lista | Sim | Um array de objetos que define as dependências a serem configuradas. Múltiplas dependências podem ser enviadas em uma única solicitação. |
| sourceFieldId | Número | Sim | Identificador de campo pai. Apenas os campos List, CatalogList e CheckBox são permitidos. |
| triggerValueId | Número | Sim | O ID do valor do campo pai que aciona a dependência. Para os campos List e CatalogList, ele é obtido a partir do endpoint de consulta de valor. Para campos do tipo CheckBox, o valor é sempre 1 (verdade). |
| targetFieldId | Número | Sim | O ID do campo filho que é ativado quando o campo pai tem o valor definido para triggerValueId. |
| visível | Booleano | Sim | Indica se o campo filho está visível quando a dependência é ativada. |
| Editável | Booleano | Sim | Indica se o campo filho é editável quando a dependência é ativada. |
| obrigatório | Booleano | Sim | Indica se o campo filho é necessário quando a dependência é ativada. |
| herdarValores | Booleano | Sim | Indica se o campo filho ShortText herda automaticamente a chave do valor selecionado no campo CatalogList pai. Ele só se aplica quando o campo filho é do tipo ShortText. |
| filteredValueIds | Lista | Não | Um array de identificadores para os valores do campo filho que serão exibidos quando a dependência for ativada. Se for enviado vazio, o campo filho exibe todos os seus valores disponíveis. Ele se aplica apenas aos campos filhos List e CatalogList. |
⚐ NOTA:
- Um campo filho só pode ter Um campo de pai solteiro. Se você tentar configurar um campo filho que já tenha outro pai atribuído, a dependência retornará
success: false.- O campo pai e o campo filho devem pertencer ao Mesmo modelo e para o Mesmo tipo de caso. Z- O campo pai não pode ser o mesmo que o campo filho.
- Apenas os corpos tipo Lista, CatálogoLista e CheckBox Eles podem atuar como um campo principal.
- Só pode existir um campo ShortText com herdeiraValores=verdadeiro por combinação de sourceFieldId + triggerValueId.
- Se uma dependência existente for encaminhada (mesmo sourceFieldId + targetFieldId + triggerValueId), o sistema executa um upsert- Atualiza propriedades e substitui filteredValueIds existentes.
- O processamento é Independente por item: Se uma dependência falhar, as outras são processadas com sucesso.
Propriedades de correção automática
O sistema aplica as seguintes correções automáticas quando combinações inconsistentes de visível, editável e obrigatório são submetidas:
| Combinação enviada | Resultado persistente |
|---|---|
| Obrigatório=Verdadeiro, Visível=Falso, Editável=Falso | visível=verdadeiro, editável=verdadeiro, obrigatório=verdadeiro |
| editável=verdadeiro, visível=falso | visível=verdadeiro, editável=verdadeiro |
| visível=falso, editável=falso, obrigatório=falso | visível=falso, editável=falso, obrigatório=falso |
⚐ NOTA: Para Campos de Tipo CheckBox Como campo pai, o endpoint aceita o envio de
filteredValueIdse as propriedades visível, editável e obrigatória, porém essa configuração não tem impacto nos consoles Especialista e Cliente. A partir do console de administrador, você não pode configurar valores ou propriedades filtradas para dependências de campos CheckBox.
Corpo da petição
Dependência de List → List com filteredValueIds:
{
"dependencies": [
{
"sourceFieldId": 543,
"triggerValueId": 494,
"targetFieldId": 544,
"visible": true,
"editable": true,
"mandatory": true,
"inheritValues": false,
"filteredValueIds": [497, 498, 499]
}
]
}
Dependência CatalogList → ShortText com inheritValues:
{
"dependencies": [
{
"sourceFieldId": 545,
"triggerValueId": 81,
"targetFieldId": 546,
"visible": true,
"editable": true,
"mandatory": false,
"inheritValues": true,
"filteredValueIds": []
}
]
}
Lista de Dependências → CheckBox:
{
"dependencies": [
{
"sourceFieldId": 552,
"triggerValueId": 1,
"targetFieldId": 544,
"visible": true,
"editable": true,
"mandatory": false,
"inheritValues": false,
"filteredValueIds": []
}
]
}
Múltiplas dependências em uma única solicitação:
{
"dependencies": [
{
"sourceFieldId": 543,
"triggerValueId": 494,
"targetFieldId": 544,
"visible": true,
"editable": true,
"mandatory": true,
"inheritValues": false,
"filteredValueIds": [497, 498]
},
{
"sourceFieldId": 543,
"triggerValueId": 495,
"targetFieldId": 544,
"visible": true,
"editable": true,
"mandatory": true,
"inheritValues": false,
"filteredValueIds": [500]
}
]
}
Responder
{
"content": [
{
"errorMessage": null,
"sourceFieldId": 543,
"success": true,
"targetFieldId": 544,
"triggerValueId": 494
}
],
"totalItems": 1
}
Parâmetros de resposta
| Nome | Tipo de dado | Descrição |
|---|---|---|
| totalItems | Número | Dependências totais processadas na petição. |
| conteúdo | Lista | Liste com o resultado de cada dependência enviada. |
| sourceFieldId | Número | Identificador do campo pai enviado na solicitação. |
| targetFieldId | Número | O identificador do campo filho enviado na solicitação. |
| triggerValueId | Número | O identificador do valor de gatilho enviado na solicitação. |
| Sucesso | Booleano | Indica se a dependência foi configurada com sucesso. Se for false, o campo errorMessage descreve o motivo. |
| Mensagem de erro | Texto | Descrição do erro quando o sucesso é false. Seu valor é null quando a operação for bem-sucedida. |
Mensagens de erro
| Código | Status HTTP | Mensagem de erro |
|---|---|---|
| 200 | OKEY | success: false — Source field {id} not found or deleted |
| 200 | OKEY | success: false — Source and target field cannot be the same |
| 200 | OKEY | success: false — Source field type '{tipo}' is not valid. Must be List, CatalogList or CheckBox |
| 200 | OKEY | success: false — Trigger value {id} does not exist in source field {id} |
| 200 | OKEY | success: false — inheritValues is only valid for target fields of type ShortText, but target is '{tipo}' |
| 200 | OKEY | success: false — Only one ShortText with inheritValues=true is allowed per source+triggerValue in a single request (source {id}, triggerValue {id}) |
| 200 | OKEY | success: false — Source field model ({id}) does not match target field model ({id}) |
| 401 | Desautorizado | Token não fornecido ou expirado. |
| 500 | Erro de servidor interno | CampoDeDependênciaDeCargaFalha |