URL: /Task/View

Method: GET

Descrizione

Questo metodo ritorna una pagina con un task DocsMarshal.
Qualora il task specificato avesse impostato un CustomUrl questa pagina ritornerebbe un redirect verso quell'URL.

Formato richieste

Legenda:
Parametro obbligatorio
Parametro opzionale
{
    SessionId: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
    TaskExternalId: 'TaskExternalId',
    TaskId: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
    ReturnUrl: 'ReturnURL''
}

Descrizione parametri

SessionId

Guid

Identificativo dell'utente in sessione, se non specificata il sistema permette di effettuare il Login.

TaskExternalId

String

ExternalId identificativo del task. Nel caso non sia univoco viene mostrato un elenco dei task trovati.

TaskId

Guid

Id identificativo univoco del task.

ReturnUrl

String

Url di ritorno dopo avere completato il task.

Verranno passati questi parametri:

  • Outcome <string>: Il valore dell'outcome utilizzato per chiudere il task.
  • UserId <int>: L'Id dell'utente che ha completato il task.
  • TaskId <Guid>: L'Id del task di riferimento.
  • Completed <bool>: Definisce se il task è stato completato oppure se è ancora da completare.
    Valorizzato a "true" solo se è stato selezionato un outcome.
    Valorizzato a "false" se selezionato "Save & Close" oppure "Cancel".

Codice di esempio: API JS

DM.Masks.Workflows.Tasks.View({
    // titolo del popup
    title: 'verifica dati',

    // contenitore all'interno del quale inserire la maschera;
    // se non viene specificato un contenitore allora la maschera verrà aperta in un popup a schermo pieno;
    // il contenitore può essere una stringa rappresentante un selettore CSS, oppure un HTMLElement Javascript, oppure un elemento jQuery;
    // se si specifica un contenitore la mascherà ne prenderà le dimensioni, quindi è necessario che il contenitore abbia altezza e larghezza definite.
    container: '#my-container',

    // parametri da passare alla maschera
    params: {
        SessionId: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
        TaskExternalId: 'VerificaPreventivo'
    },

    // callback invocato in seguito al caricamento del task
    onLoad: function(e) {
        // struttura dell'oggetto passato al callback
        e = {
            iframe: {...}, // oggetto jQuery contenente l'iframe
            popup: {...}, // istanza di dxPopup
            close: (function)// metodo per chiudere la maschera
        };
    },

    // callback invocato quando il task viene evaso
    onComplete: function(e) {
        // struttura dell'oggetto passato al callback
        e = {
            iframe: {...}, // oggetto jQuery contenente l'iframe
            popup: {...}, // istanza di dxPopup
            message: {
                Type: 'COMPLETE',
                TaskId: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
                OutcomeId: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
                OutcomeValue: 'Continua'
            }
        };
    },

    // callback invocato quando viene premuto "Save and Close"
    onSaveAndClose: function(e) {
        // struttura dell'oggetto passato al callback
        e = {
            iframe: {...}, // oggetto jQuery contenente l'iframe
            popup: {...}, // istanza di dxPopup
            message: {
                Type: 'SAVEANDCLOSE',
                TaskId: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'
            }
        };
    },

    // callback invocato prima che il componente esegua un redirect verso il CustomUrl impostato sul task.
    // è possibile impedire il redirect settando e.cancel a "true".
    onRedirectingToCustomUrl: function(e) {
        // struttura dell'oggetto passato al callback
        e = {
            iframe: {...}, // oggetto jQuery contenente l'iframe
            popup: {...}, // istanza di dxPopup
            message: {
                Type: 'REDIRECTINGTOCUSTOMURL',
                TaskId: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
                TaskExternalId: 'MyTask',
                CustomUrl: 'https://www.mysite.com'
            },
            cancel: false  // impostare questa proprietà a "true" ha come effetto l'annullamento del redirect
        };
    },

    // callback invocato quando viene premuto "Cancel"
    onCancel: function(e) {
        // struttura dell'oggetto passato al callback
        e = {
            iframe: {...}, // oggetto jQuery contenente l'iframe
            popup: {...}, // istanza di dxPopup
            message: {
                Type: 'CANCEL',
                TaskId: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'
            }
        };
    },

    // callback invocato in seguito agli eventi "complete", "save and close" and "cancel"
    // utilizzando la proprietà e.message.Type è possibile distinguere l'origine dell'evento
    onMessage: function(e) {
        // struttura dell'oggetto passato al callback
        e = {
            iframe: {...}, // oggetto jQuery contenente l'iframe
            popup: {...}, // istanza di dxPopup
            message: {
                Type: 'COMPLETE' oppure 'CANCEL' oppure 'SAVEANDCLOSE',
                TaskId: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
                ...vengono riportate tutte le proprietà specifiche dell'evento
            }
        };
    },

    // callback invocato quando l'utente utilizza il bottone "close" o il tasto "esc" per chiudere il popup senza interagire con il suo contenuto.
    onUserClose: function() {}
});