GlideModalForm : client

  • Rversion finale: Yokohama
  • Mis à jour 30 janv. 2025
  • 3 minutes de lecture
  • L’API GlideModalForm fournit des méthodes pour afficher un formulaire dans un GlideModal.

    L’utilisation générale de la classe GlideModalForm consiste à créer l’objet, à définir les préférences, puis à afficher le GlideModalForm.
    var dialog = new GlideModalForm('dialog title', 'table_name_or_form_name', [callback on completion of submit])
      dialog.setPreference('name', 'value');
      dialog.render();

    Spécifiez les paramètres de requête qui sont transmis au formulaire à l’aide de la méthode setPreference( ). Toute paire nom/valeur que vous spécifiez avec setPreference() est envoyée avec la demande de formulaire POST pour afficher le formulaire.

    Le GlideModalForm est défini pour remplir la hauteur de la fenêtre de document.

    GlideModalForm : GlideModalForm(String title, String tableName, Function onCompletionCallback, Boolean readOnly)

    Crée une instance de la classe GlideModalForm.

    Tableau 1. Paramètres
    Nom Type Description
    Titre Chaîne Titre du formulaire modal.
    tableName Chaîne Table en cours d’affichage.
    onCompletionCallback Fonction Fonction à appeler après l’envoi et le traitement du formulaire sur le serveur.

    La fonction de rappel a la formecallbackFunction(String action_verb, String sys_id, String table, String displayValue) où :

    • action_verb: nom de l’action d’interface utilisateur exécutée. Par exemple, sysverb_insert (bouton Soumettre), sysverb_cancel sysverb_save (bouton Enregistrer).
    • sys_id: Sys_id de l’enregistrement affecté.
    • table: nom de la table contenant l’enregistrement.
    • displayValue: valeur affichée sur le formulaire.
    readOnly Booléen Facultatif. Marqueur indiquant si le formulaire modal doit être défini sur lecture seule.
    Valeurs valides :
    • true : définir le formulaire sur lecture seule.
    • faux : défini pour lire/écrire.

    Valeur par défaut : false

    Cet exemple montre comment instancier un objet GlideModalForm.

    function openDevice(deviceSysID, deviceName) {
      var uName = gel('hidden_user_name').value + "'s ";
      deviceName = new String(deviceName).escapeHTML();
      var gp = new GlideModalForm(uName + deviceName, "cmn_notif_device", refreshNotifPage);
      gp.addParm('sys_id', deviceSysID);
      gp.render();
    }

    GlideModalForm : addParm(Nom de chaîne, valeur de chaîne)

    Définit le champ de formulaire spécifié sur la valeur spécifiée.

    Tableau 2. Paramètres
    Nom Type Description
    nom Chaîne Nom du champ de formulaire. Si le nom spécifié n’est pas un champ dans le formulaire modal associé, il est ignoré.
    valide Chaîne Valeur sur laquelle définir le champ de formulaire spécifié.
    Tableau 3. Renvoie
    Type Description
    nul

    Cet exemple montre comment appeler addParm() pour définir la valeur du champ sys_id le formulaire modal.

    function openDevice(deviceSysID, deviceName) {
      var uName = gel('hidden_user_name').value + "'s ";
      deviceName = new String(deviceName).escapeHTML();
      var gp = new GlideModalForm(uName + deviceName, "cmn_notif_device", refreshNotifPage);
      gp.addParm('sys_id', deviceSysID);
      gp.render();
    }

    GlideModalForm : setSysID(String sys_id)

    Définit la préférence de sys_id de l’objet.

    Tableau 4. Paramètres
    Nom Type Description
    sys_id Chaîne Préférence pour l’id. Un des paramètres de requête transmis au formulaire.
    Tableau 5. Renvoie
    Type Description
    nul

    Cet exemple montre comment utiliser la méthode setSysID() pour initialiser la valeur du sys_id.

    function(startDate, endDate) {
      var dialog = new GlideModalForm("Add Schedule Item", "cmn_schedule_span");
      dialog.setSysID("-1");
      dialog.addParm("sysparm_collection", "cmn_schedule");
      dialog.addParm("sysparm_collectionID", this.sysId);
      dialog.addParm("sysparm_collection_key", "schedule");
     
      var q = "schedule=" + this.sysId + "^start_date_time="
       + startDate.serializeInUserFormat() + "^end_date_time="
       + endDate.serializeInUserFormat() + "^";
    
      if (startDate.isAllDay(endDate))
        q += "^all_day=true^";
     
      dialog.addParm("sysparm_query", q);
      dialog.render();
    }

    GlideModalForm : setCompletionCallback(Fonction de rappel)

    Définit la fonction à appeler lorsque le formulaire a été soumis et traité avec succès par le serveur.

    Tableau 6. Paramètres
    Nom Type Description
    Fonction de rappel Fonction Fonction de rappel à appeler lorsque le formulaire a été traité avec succès.
    La fonction de rappel a la forme callbackFunction(String action_verb, String sys_id, String table, String displayValue) où :
    • action_verb: action_name à partir d’un enregistrement sys_ui_action
    • sys_id: Sys_id de l’enregistrement affecté
    • table: nom de la table contenant l’enregistrement
    • displayValue: valeur affichée sur le formulaire
    Tableau 7. Renvoie
    Type Description
    nul

    Cet exemple montre comment définir la fonction de rappel onload du modal associé.

    function handleCreateOrEdit(targetFieldName, sourceFieldName, adapterRuleId, transformerSysId){
      dialog = new GlideModalForm('Edit Adapter Rule', "sys_adapter_rule");
      dialog.setSysID(adapterRuleId); //Pass in sys_id to edit existing record
      dialog.addParm('sysparm_form_only', 'true'); //Add or remove related lists
      dialog.setOnloadCallback(hideModalForm);
      dialog.setCompletionCallback(handleAdapterCreatedOrUpdated);
      dialog.render(); //Open the dialog
    }
    function handleAdapterCreatedOrUpdated(action_verb, sys_id, table, displayValue) {
      var draftRecordTransformer = g_form.getValue("draft_record_transformer");
      if(draftRecordTransformer == null || draftRecordTransformer.length == 0) {
        //sync Sticky Replications if it is enabled.
        var ajax = new GlideAjax('ReplicationPoolUtil');
        ajax.addParam('sysparm_name', 'syncStickyReplicationSet');
        ajax.addParam('sysparm_entry_set', g_form.getValue("entry_set"));
        ajax.getXMLWait();
      }
    }

    GlideModalForm : setOnloadCallback(Fonction de rappel)

    Définit la fonction à appeler une fois le formulaire chargé.

    Tableau 8. Paramètres
    Nom Type Description
    Fonction de rappel Fonction Fonction à appeler après le chargement du formulaire. La fonction de rappel a la forme callBackFunction(obj GlideModalForm)
    Tableau 9. Renvoie
    Type Description
    nul

    Cet exemple montre comment définir la fonction de rappel au chargement du modal associé.

    function handleCreateOrEdit(targetFieldName, sourceFieldName, adapterRuleId, transformerSysId){
      dialog = new GlideModalForm('Edit Adapter Rule', "sys_adapter_rule");
      dialog.setSysID(adapterRuleId); //Pass in sys_id to edit existing record
      dialog.addParm('sysparm_form_only', 'true'); //Add or remove related lists
      dialog.setOnloadCallback(hideModalForm);
      dialog.setCompletionCallback(handleAdapterCreatedOrUpdated);
      dialog.render(); //Open the dialog
    }

    GlideModalForm : render()

    Affiche le formulaire modal.

    Tableau 10. Paramètres
    Nom Type Description
    Aucun
    Tableau 11. Renvoie
    Type Description
    nul

    Cet exemple montre comment appeler render() pour afficher le modal.

    function openDevice(deviceSysID, deviceName) {
      var uName = gel('hidden_user_name').value + "'s ";
      deviceName = new String(deviceName).escapeHTML();
      var gp = new GlideModalForm(uName + deviceName, "cmn_notif_device", refreshNotifPage);
      gp.addParm('sys_id', deviceSysID);
      gp.render();
    }