Você está aqui:
InsContractService:invokeProductRules
Use esse serviço em fluxos de contrato para invocar regras de assinatura que você adicionou a um produto.
Por exemplo, se você adicionasse regras que enviassem determinados contratos a um subscritor para aprovação, esse serviço invocaria essas regras.
Como funciona
-
Localiza o objeto de contrato com base no
objectIDe extrai os produtos para esse objeto com base nesseobjectID. O serviço consulta os itens de linha do objeto de contrato. -
Procura o
transitionNameespecificado. -
Executa as regras associadas ao produto e aplicáveis ao
transitionName. -
Se qualquer uma das regras for avaliada como verdadeira, o serviço executará a ação do Vlocity especificada nessas regras.
Por exemplo, se a ação especificar que uma tarefa será criada, o serviço criará uma tarefa.
-
Procura o valor da opção
includeStateTransition. Se o valor =true, o serviço procura o modelo de estado para esse objeto, encontra o valor defieldAPINamee altera esse valor com base na transição.
Opções remotas
Opção |
Descrição |
|---|---|
|
Se verdadeiro, o serviço altera o campo de estado especificado na Se falso, o serviço não faz nenhuma transição de estado. |
|
O ID do objeto de contrato que está sendo consultado. |
|
O nome da transição de estado associado às regras que você deseja executar. O serviço executará apenas regras associadas às Para localizar um Nome de transição, acesse o modelo de estado para esse objeto. |
|
Opcional. O estado para o qual o serviço muda o objeto de contrato quando todas as regras executadas pelo serviço são avaliadas como falsas. O serviço muda o objeto para esse estado somente se |
JSON de saída
O serviço retorna vários pares de chave/valor, uma matriz de regras avaliadas como falsas e uma matriz de regras avaliadas como verdadeiras.
{
"stateTransit": " updated Status from Submit to Underwriting",
"canTransitState": true,
"allFalse": false,
"falseRules": [...]
"trueRules": [...]
"error": "OK"
}Esse JSON inclui os seguintes pares de chave/valor:
Chave |
Valor |
|---|---|
|
Descreve o que o serviço mudou no campo Status no objeto de contrato. |
|
Informa se o serviço muda ou não o objeto de contrato para um novo estado. |
|
Se todas as regras executadas pelo serviço forem avaliadas como falsas, Se qualquer uma das regras executadas pelo serviço for avaliada como verdadeira, |
|
Uma matriz de um ou mais Inclui todas as regras executadas pelo serviço que são avaliadas como falsas. |
|
Uma matriz de um ou mais actionResults e Inclui todas as regras executadas pelo serviço que são avaliadas como verdadeiras. Aparece apenas se |
|
Qualquer erro encontrado pelo serviço. Se o valor for OK, nenhuma mensagem de erro aparecerá na UI. |
As matrizes falseRules e trueRules incluem pares de chave/valor de ruleDetails.
"ruleDetails": {
"requirement name": "Operator Points >4",
"conditions": "wcOperator.opPoints > 4",
"message": "The applicant's prior citations require underwriting review prior to issuance.",
"action method": "ReferToUnderwriting",
"action class": "DROpenImplementationClass",
"productId": "01tf4000001lKNQAA2",
"transitionName": "Submit>Underwrite",
"objectId": "0Q0f4000000ADatCAG"
}A matriz trueRules inclui um ou mais actionResults, pares de chave/valor adicionais e rulesDetails.
Os actionResults são a saída da classe de ação Vlocity e do método de ação invocado pelo serviço.
"trueRules": [
{
"actionResults": {
"Task_1": [
{
"UpsertSuccess": true,
"Id": "00Tf400000LNkx9EAD",
"ActivityDate": "2018-05-21",
"WhatId": "0Q0f4000000ADatCAG",
"Description": "The value of this vessel requires underwriting review.",
"Subject": "Total Value"
}
],
"error": "OK",
"responseType": "SObject"
},
"ruleDetails": {
"requirement name": "Total Value",
"conditions": "WC.wcValue > 250000",
"message": "The value of this vessel requires underwriting review.",
"action method": "ReferToUnderwriting",
"action class": "DROpenImplementationClass",
"productId": "01tf4000001lKNQAA2",
"transitionName": "Submit>Underwrite",
"objectId": "0Q0f4000000ADatCAG"
}
},
}
],
