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

  • Freigeben Version: Xanadu
  • Aktualisiert 1. August 2024
  • 1 Minute Lesedauer
  • Konfigurieren Sie die geskriptete Rückschreibaktion eines Aktionselements, mit der Sie die Signatureingabe in Ihrem Eingabeformularbildschirm speichern können.

    Vorbereitungen

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

    Darüber hinaus müssen Sie ein Aktionselement zur Verwendung für diesen Eingabeformularbildschirm 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 MobileSignatureHandler-Skripteinbindung verwenden, um Signatureingaben zu speichern. Die MobileSignatureHandler-Skripteinbindung speichert die Signatur in der Tabelle „sys_attachment“ und erstellt einen relevanten Datensatz in der Tabelle „signatur_image“.

    Sie können auch anwenderdefinierten Code schreiben, um das Speichern Ihrer Signatureingaben zu verarbeiten. Informationen zu serverseitigem Skripting finden Sie unter Serverseitige Skripterstellung.

    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 Skript zum Speichern der Signatur im Feld Ausführungsskript hinzu.
      Das folgende Elementskript für die Rückschreibaktion 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.