Konfigurieren Sie eine geskriptete Rückschreibaktion, die eine Signatureingabe speichert

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 1 Minute Lesedauer
  • Konfigurieren Sie die geskriptete Rückschreibaktion eines Aktionselements, mit der die Signatureingabe in Ihrem Eingabeformular-Bildschirm gespeichert werden kann.

    Vorbereitungen

    Sie müssen einen Eingabeformular-Bildschirm mit Signatureingaben erstellen. Weitere Informationen finden Sie unter Konfigurieren Sie Eingabeformular-Bildschirme mit Signatureingaben.

    Darüber hinaus müssen Sie ein Aktionselement für diesen Eingabeformular-Bildschirm konfiguriert haben. Weitere Informationen finden Sie unter Aktionselement konfigurieren.

    Erforderliche Rolle: admin

    Warum und wann dieser Vorgang ausgeführt wird

    Administratoren können Skripts schreiben, die die Aktion ausführen, und dann die Signatureingaben speichern. Alternativ können sie Skripts schreiben, die die Signatur zuerst speichern, bevor die Aktion ausgeführt wird.

    Sie können die Skripteinbindung MobileSignatureHandler verwenden, um Signatureingaben zu speichern. Die Skripteinbindung MobileSignatureHandler speichert die Signatur in der Tabelle „sys_attachment“ und erstellt einen relevanten Datensatz in der Tabelle „signature_image“.

    Sie können auch benutzerdefinierten Code schreiben, um das Speichern Ihrer Signatureingaben zu verarbeiten. Weitere Informationen zum serverseitigen Skripting finden Sie unter Serverseitiges Skripting.

    Prozedur

    1. Navigieren zu Alle > System Mobile > Aktionselemente.
    2. Wählen Sie das Aktionselement aus, das Sie für die Signatureingabe verwenden möchten.
    3. Fügen Sie das Signaturspeicherskript im Feld Ausführungsskript hinzu.
      Das folgende Skript für das Rückschreibaktionselement zeigt beispielsweise, wie MobileSignatureHandler zum Speichern der Signatureingabe verwendet werden kann:
      (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. Wählen Sie Aktualisieren aus, um die Konfiguration zu speichern.