Olet tässä:
InsQuoteService:invokeRules
Käytä tätä palvelua kutsuaksesi tilan siirtymisen sääntöjä, jotka liittyvät kohdetilauksen tarjouksen siirtymiseen.
Jos säännöt täyttävät siirtymisen ehdot, tämä palvelu suorittaa siirtymiseen liittyvät toiminnot, kirjaa halutessaan sääntöjen suorituskertojen tulokset lokiin ja siirtää kohdetarjouksen uuteen tilaan.
Ennen kuin tämä palvelu suoritetaan, järjestelmä suorittaa vieraskäyttäjän tarkastuksen.
Tämä palvelu voidaan käyttää vieraskäyttäjille. Vieraskäyttäjä, joka käyttää OmniScript-, Integration Procedure- tai UI-tehtävää, voi jatkaa, ja tämä palvelu suoritetaan. Näissä tapauksissa quoteId ja opportunityId on kuitenkin salattu, joten vieraskäyttäjät eivät näe näitä tunnuksia.
Miten se toimii?
-
Tämä palvelu noutaa quoteId-vaihtoehdon määrittämän objektin.
-
Kohdetilan siirto määritetään objektin tyypin, objektin tämänhetkisen tilan ja tilaan-vaihtoehdon perusteella.
-
Tuotesäännöt noudetaan ja suoritetaan osavaltion siirtymisen, osavaltion siirtymisen sääntöjen ja osavaltion siirtymisen sääntöjen toiminnoista.
-
Jos osavaltion siirtymisen säännöt täyttävät osavaltion siirtymisessä määritetyt siirtymisen suorittamisen ehdot, objekti siirretään Osavaltioon.
Jos tilan siirtoon liittyy toiminto, toiminto suoritetaan.
Jos siirron suorittamisen ehdot eivät täyty, objekti siirretään tilan siirtymässä määritettyyn vaihtoehtoiseen tilaan, jos sellainen on. Jos tilan siirtymällä ei ole vaihtoehtoista tilaa, objekti säilyttää nykyisen tilansa.
-
Jos logResults-vaihtoehto on määritetty, kunkin säännön tulokset ja objektin transaktion tulos (onnistui tai epäonnistui) kirjataan lokiin.
Etäasetukset
Syötetty JSON
Seuraava esimerkki näyttää syötetyn JSON-tiedoston esimerkin.
{
"quoteId": "02i3h0000009OqCAAU",
"toState": "Review",
"lastDefaultState": "Draft",
"invokeStateTransitionRules": true,
"invokeProductRules": true,
"invokeActionType": "draft",
"actionScope": "version",
"logResults": true,
"fromNoneState": false
}Tulos-JSON
Seuraavassa esimerkissä näytetään esimerkki tuloksen JSON-koodista.
{
"transition": true,
"transitedState": "Review",
"stateTransitionRules": {
"result": true,
"ruleDetails": [{
"result": true,
"conditions": "Quote.Status == 'Draft'",
"name": "Status is Draft",
"ruleId": "a5Q6g0000005vSPEAY",
"transitionName": "Draft > Review",
"objId": "02i3h0000009OqCAAU"
}, {
"result": false,
"conditions": "Quote.Name == 'Test'",
"name": "Name is Test",
"ruleId": "a5Q6g0000005vSPEAZ",
"transitionName": "Draft > Review",
"objId": "02i3h0000009OqCAAU"
}]
},
"productRules": {
"allFalse": false,
"trueRules": {
"Quote": [{
"ruleDetails": {
"ruleId": "a5Q6g0000005vSPEBX",
"objectId": "02i3h0000009OqCAAU",
"transitionName": "Draft > Review",
"productId": "01t6g000000RzFAAA0",
"action class": null,
"action method": null,
"message": "Name is not blank",
"conditions": "Quote.Name != ''",
"requirement name": "Name is not blank"
}
}]
},
"falseRules": {
"Quote": [{
"ruleDetails": {
"ruleId": "a5Q6g0000005vSPEBX",
"objectId": "02i3h0000009OqCAAU",
"transitionName": "Draft > Review",
"productId": "01t6g000000RzFAAA0",
"action class": null,
"action method": null,
"message": "Name is blank",
"conditions": "Quote.Name == ''",
"requirement name": "Name is blank"
}
}]
}
}
}Tuloksen kuvaus
suoritettujen sääntöjen kokonaissumma tulos. Jos arvo on true, kohdeobjekti siirretään arvoon State. Jos arvo on false, kohdetila pysyy samana tai siirtyy tilan siirtymisessä määritettyyn vaihtoehtoiseen tilaan.
Suoritettujen sääntöjen ja niiden tulosten luettelo ruleDetails
Tämä JSON sisältää nämä avain/arvo-parit:
Avain |
Arvo |
|---|---|
ehdot |
Säännön ehto |
name |
Säännön nimi |
objId |
Objektin tunnus, jolle säännöt suoritettiin |
tulos |
Säännön ehdon arvioinnin tulos kohde-tarjoukseen nähden |
ruleId |
Säännön tunnus |
transitionName |
Sääntöön liittyvän siirtymän nimi |
