Configurer une action d’écriture différée scriptée qui enregistre une entrée de signature

  • Rversion finale: Zurich
  • Mis à jour 31 juil. 2025
  • 1 minute de lecture
  • Configurez une action d’écriture différée scriptée d’un élément d’action qui peut enregistrer l’entrée de signature dans l’écran de votre formulaire d’entrée.

    Avant de commencer

    Vous devez créer un écran de formulaire d’entrée avec des entrées de signature. Pour plus d'informations, consultez Configurer les écrans du formulaire d’entrée avec entrées de signature.

    En outre, vous devez avoir configuré un élément d’action à utiliser pour cet écran de formulaire d’entrée. Pour plus d'informations, consultez Configurer un élément d’action.

    Rôle requis : admin

    Pourquoi et quand exécuter cette tâche

    Les administrateurs peuvent écrire des scripts qui effectuent l’action, puis enregistrer les entrées de signature. Ils peuvent également écrire des scripts qui enregistrent la signature avant d’effectuer l’action.

    Vous pouvez utiliser l’include de script MobileSignatureHandler pour enregistrer les entrées de signature. L’include de script MobileSignatureHandler enregistre la signature dans la table sys_attachment et crée un enregistrement pertinent dans la table signature_image.

    Vous pouvez également écrire du code personnalisé pour gérer l’enregistrement de vos entrées de signature. Pour plus d’informations sur les scripts côté serveur, voir Scripting côté serveur.

    Procédure

    1. Accédez à la Tous > Mobile système > Éléments d'action.
    2. Sélectionnez l’élément d’action que vous souhaitez utiliser pour l’entrée de signature.
    3. Ajoutez le script d’enregistrement de signature dans le champ Script d’exécution .
      Par exemple, le script d’élément d’action d’écriture différée suivant montre comment MobileSignatureHandler peut être utilisé pour enregistrer l’entrée de signature :
      (function WriteBackAction(parm_input, parm_variable, actionResult) {
          var gr = new GlideRecord("incident");
          gr.get(parm_variable['sys_id']);
          var shortDesc = parm_input['shortDescInput'];
          gr.setValue("short_description", shortDesc);
          gr.update();
            // in this example "signatureInput" is the name of a sys_sg_input of type signature
            // SignatureType will return either "Image" or "Text"
          var signatureType = parm_input['signatureInput']["SignatureType"];
            // SignatureValue will return a String containing the base64 respresentation of the image in the case of a drawn signature
            // or a String with the name of the user if they typed their name
          var signatureValue = parm_input['signatureInput']["SignatureValue"];
          var table = "incident";
          var documentId = parm_variable['sys_id'];
          var signatureHandler = new sn_mobile.MobileSignatureHandler();
          if (signatureType == "Image")
              signatureHandler.insertSignatureImage(table, documentId, signatureValue);
          else if (signatureType == "Text")
              signatureHandler.insertTypedSignature(table, documentId, signatureValue);
      })(parm_input, parm_variable, actionResult);
    4. Sélectionnez Mettre à jour pour enregistrer la configuration.