Condividi tramite


Domande frequenti sul calcolo del tempo personalizzato dei KPI del contratto di servizio

Descrizione

Questo argomento contiene le domande frequenti (FAQ) che tu, come amministratore, potresti avere sul calcolo del tempo personalizzato dei KPI (indicatori di prestazioni chiave) dei contratti di servizio.

Quando viene avviata l'azione personalizzata o il plug-in?

L'azione personalizzata o il plug-in vengono avviati durante la creazione di una nuova istanza KPI del contratto di servizio, che include anche un KPI del contratto di servizio, che è stato ripreso da uno stato di pausa.

In che modo lo scenario di pausa e ripristino è diverso da uno scenario di creazione di KPI del contratto di servizio?

Lo scenario di pausa e ripristino include i due passaggi seguenti:

  1. L'azione personalizzata viene avviata con requestType getElapsedTime. Questo calcola il tempo trascorso tra lo stato di pausa e di ripresa del KPI del contratto di servizio.
  2. L'azione personalizzata viene avviata con requestType getEndTime. Questo calcola il nuovo WarningTime aggiungendo quanto sopra elapsedTime alla corrente warningTime. Un calcolo simile viene fatto anche per FailureTime.

Come posso sovrascrivere StartTime per un'istanza KPI del contratto di servizio senza creare e aggiornare il campo DateTime personalizzato?

Puoi sovrascrivere startTime di un'istanza KPI del contratto di servizio in base alla logica personalizzata, in base alla quale devi modificare il parametro startTime.

  // when the case priority is modified and a new KPI instance is being created, the KPI instance needs to start from UTC instead of CreatedOn
        if ((int)(((OptionSetValue)(caseRecord.Attributes["priority"])).Value) == 1)
	{
            startTime = DateTime.UtcNow
	}

	// use OOB SLATimeCalculation Custom Action to do actual calculation_
	OrganizationRequest requestTimeCalculation = new OrganizationRequest("msdyn_SLATimeCalculation");
	requestTimeCalculation["startTime"] = startTime;
        ... rest code is same as previous examples

Come posso ignorare la durata di avviso o errore definita di un'istanza KPI del contratto di servizio?

Puoi sovrascrivere l'avviso o l'errore di un'istanza KPI del contratto di servizio in base alla logica personalizzata, in base alla quale devi modificare il parametro seguente. Si noti che il valore fornito deve essere in minuti.

// when the case priority is modified and a new KPI instance is being created, the KPI instance must have failure time as 1 hour.
        if ((int)(((OptionSetValue)(caseRecord.Attributes["priority"])).Value) == 1)
	{
            newFailureTime = 60; // in minutes
	}

	// use OOB SLATimeCalculation Custom Action to do actual calculation_
	OrganizationRequest requestTimeCalculation = new OrganizationRequest("msdyn_SLATimeCalculation");
        requestTimeCalculation["minutes"] = newFailureTime;
        ... rest code is same as previous examples