URL: /Profile/ForInsert

Method: GET

Descrizione

Questo metodo ritorna un form HTML che consente di inserire un profilo.

Formato richieste

Legenda:
Parametro obbligatorio
Parametro opzionale
{
    'ClassTypeId': 'class type id',
    oppure
    'ClassTypeExternalId': 'class type externalId',
    oppure
    'DynAssObjectId': 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
    'DynAssExternalId': 'MyDynAss',
    oppure
    'DynAssObjectId': 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
    'DynAssId': 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
    oppure
    'ObjectIdToClone': 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',

    'SessionID': SID,
    'MaskExternalId': 'mask external id',
    'languageCode': 'lang code',
    'DMAfterInsertRedirect': 'https://mysite.com',
    'DMAfterInsertReturnProfileInfo': 'Se si desidera utilizzare il parametro 'DMAfterInsertRedirect' questo parametro se impostato a true accoderà tutti i parametri del profilo all'url, altrimenti solo l'objectid del profilo appena inserito
    'DomainId': 'Dominio di default dato il suo Id',
    'DomainExternalId': 'Dominio di default dato il suo externalId',
    'ObjectStateId': 'Stato di default dato il suo Id',
    'ObjectStateExternalId': 'Stato di default dato il suo externalId',
    'FormOnly': true/false
    'ArchiveButtonCaption': 'Eventuale caption personalizzata del pulsante di "Archive".',
    'ArchiveAndContinueButtonCaption': 'Eventuale caption personalizzata del pulsante di "Archive and Continue".',
    'ShowArchiveAndContinueButton': 'Booleano che indica se deve essere mostrato il pulsante "Archive and Continue". Il valore di default è True.',
    'InsertCompletedMessage': 'Se non si desidera gestire il parametro DMAfterInsertRedirect, è possibile utilizzare questo parametro per mostrare un testo di conferma di avvenuto inserimento. Nel testo sarà altresi possibile utilizzare dei parametru nella forma {NOMEPARAMETRO}, dove NOMPARAMETRO sarà l'externalId del campo',
    'InsertCompletedMessageObjectId': 'Se non si desidera gestire il parametro DMAfterInsertRedirect, è possibile utilizzare questo parametro per utilizzare il contenuto di un profilo come messaggio di conferma avvenuto inserimento. L'objectId è riferito al codice del profilo di riferimento (N.B. Da utilizzare in coppia con il parametro InsertCompletedMessageFieldExternalId ).',
    'InsertCompletedMessageFieldExternalId': 'Se non si desidera gestire il parametro DMAfterInsertRedirect, è possibile utilizzare questo parametro per utilizzare il contenuto di un profilo come messaggio di conferma avvenuto inserimento. L'externalId del campo è riferito al campo aggiuntivo del profilo indicato con la proprietà InsertCompletedMessageObjectId. Se il campo è multilingua il sistema utilizzerà il valore della lingua del profilo di provenienza. Se il profilo inserito non sarà riferito ad una classe ManageContentByLanguage, verrà utilizzata la lingua dell'utente connesso. Come la proprietà InsertCompletedMessage il contenuto del campo potrà contenere parametri nella forma {EXTERNALIDCAMPO}.',
    'HideMaskAfterComplete': 'Se si dedidera che dopo l'avvenuto inserimento con successo la maschera di insert non venga visualizzata valorizzare a true questo parametro.',
    'UseLabelsFromLayout': 'Se UseLabelsFromLayout=true, allora i label dei campi non verranno ricavati dalla configurazione dei campi, ma dal label che gli è stato assegnato in fase di disegno della maschera.',
    'EditableFieldExternalIds': 'Permette di limitare i campi modificabili dall'utente. Se questo parametro è specificato, tutti i campi il cui ExternalId non è indicato diventano in sola lettura. Possono essere specificati uno o più ExternalId di campi aggiuntivi o di Dynamic Association separati dal carattere ";".',
    'EngineVersion': 'Permette di scegliere quale motore delle maschere utilizzare, sovrascrivendo l'opzione globale definita a livello di impianto nella Global Configuration. I valori possibili sono 1 e 2',
    'Presenter': [
        {
            'FieldId': 'ID del campo',
            'FieldExternalId': 'ExternalID del campo',
            'DynAssId': 'ID della Dynamic Association',
            'DynAssExternalId': 'ExternalID della Dynamic Association',
            'Type': 'Tipo dell'input',
            'StringSize': 'Lunghezza Massima del campo',
            'Precision': 'Quanti caratteri mostrare',
            'Scale': 'Numeri dopo la virgola',
            'AllowNull': 'true/false, se false imposta il campo come obbligatorio',
            'Label': 'Cambia l'etichetta mostrata',
            'ElementId': 'Definisci l'ID dell'input di questo campo del form',
            'ElementName': 'Definisci il Name dell'input di questo campo del form',
            'ReadOnly': 'true/false, se true imposta il campo solo in lettura',
        }
    ]
    'ApplyBootstrapContainer': true, //Parametro delle maschere versione >= 2, permette di definire se applicare gli stili della classe CSS 'container' di boostrap alla maschera
}

Precompliare Valori dei Campi

È possibile prevalorizzare i valori dei campi del ForInsert utilizzando o l'ExternalID del campo oppure l'ID effettivo aggiungendo C prima dell'ID.

Esempio:

    "FieldExternalID" : "Prevalorizzare",
    "C33" : "Prevalorizzare"

Note

  • sessionId: Se non specificato propone la maschera di login DocsMarshal.
  • ArchiveButtonCaption: Se non specificato il default è Invia.
  • MaskExternalId: specifica la maschera da utilizzare per il layout.
  • DMAfterInsertRedirect: specifica una URL verso la quale redirigere l'utente al termine dell'inserimento
  • formOnly: se impostato a true, verrà ritornato solamente il minimo indispensabile a visualizzare il contenuto ovvero gli script, gli stili ed un contenitore HTML.
    Se impostato a false o non impostato affatto, verrà ritornata una pagina web completa
  • FieldExternalId: ExternalId del campo che si desidera valorizzare. Es: Se il campo ha ExternalId=Anno Anno=2017 verrà valorizzato il campo Anno con il valore 2017
  • DMAfterInsertReturnProfileInfo: se non specificato default true
  • Presenter: Permette di modificare il presenter applicato a un campo aggiuntivo o a una Dynamic Association. Per sapere i valori possibili per il campo Type seguire la LISTA DEI PRESENTER TYPE

Formato risposte

    <codice HTML>

Note

  • La pagina contiene riferimenti a librerie CSS e JavaScript esterne quali jQuery e Bootstrap necessarie per rendere il form completo e funzionante.
  • Nelle maschere V1 veniva applicato al contenitore la classe CSS 'container', apportando alla maschera dimensioni ridotte, e riposizionandola al centro della pagina.
    A partire dalle maschere V2, Boostrap non è più utilizzato, tuttavia è ancora possibile gestire questo comportamento, attraverso il parametro 'ApplyBootstrapContainer', true di default.

API Javascript

Vai alla documentazione del componente (consigliato)

API Javascript legacy

Attenzione: la seguente API è deprecata e il suo utilizzo è fortemente scoraggiato. La documentazione che segue è ad uso e consumo di chi necessita specificatamente di utilizzare le maschere legacy.

DM.Masks.Profile.Insert({
    // titolo del popup
    title: 'inserimento nuova anagrafica',

    // 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: {
        ClassTypeExternalId: 'MyClass',
        ArchiveButtonCaption: 'Crea'
    },

    // callback invocato in seguito al caricamento della maschera di insert
    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 l'utente utilizza il bottone "close" o il tasto "esc" per chiudere il popup senza interagire con il suo contenuto.
    onUserClose: function() {},

    // callback invocato in seguito all'inserimento
    onInsert: function(e) {
        // struttura dell'oggetto passato al callback
        e = {
            iframe: {...}, // oggetto jQuery contenente l'iframe
            popup: {...}, // istanza di dxPopup
            message: {
                Type: 'INSERT',
                // ObjectId del profilo inserito
                ObjectId: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
                // profilo inserito, inclusi i campi di sistema e i campi aggiuntivi
                // i campi aggiuntivi sono presenti utilizzando come chiave sia il loro ID che il loro ExternalId
                Profile: {
                    ObjectId: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
                    DomainId: 1,
                    ClassTypeId: 1,
                    ObjectStateId: 1,
                    RefIdCliente: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
                    Importo: 55,
                    Quantita: 2,
                    Totale: 110
                }
            },
            close: (function) // metodo per chiudere la maschera
        };
    }
});