Skip to content

SignaturePad

Erlaubt dem Anwender, eine handschriftliche Unterschrift mit Maus, Stift oder Finger zu erfassen. Die Unterschrift wird als PNG-Bild im Base64-Format zurückgegeben und kann z.B. in einem Image angezeigt oder als XSTRING im SAP-System gespeichert werden.

Designer-Attribute

AttributBeschreibungDefault
controlIdEindeutige IDautomatisch generiert
widthBreite (CSS-Wert)
heightHöhe (CSS-Wert)
penColorStiftfarbe#000000
backgroundColorHintergrundfarbeweiß
enabledKomponente aktivtrue
visibleSichtbartrue
spanS / spanM / spanL / spanXLGrid-Layout12

ABAP-API

Zugriff über me->get_signature_pad( '<controlId>' ).

MethodeZweck
GET_VALUELiefert die Unterschrift als data:image/png;base64,...
INITPad leeren

Geerbte Methoden: siehe Control.

Beispiel: /mobbuild/cl_ex_signature

Das Beispiel liest die Unterschrift bei einem Save-Event und übergibt sie direkt an ein Image-Control:

abap
METHOD on_pai.

  IF me->get_event( )->get_event_key( ) EQ 'Save'.

    DATA(lo_signature_pad) = me->get_signature_pad( 'signaturePad' ).
    DATA(lo_signature_img) = me->get_image( 'imgSignature' ).

    " The signature is transferred as data:image/png;base64
    DATA(lv_data) = lo_signature_pad->get_value( ).

    lo_signature_img->set_src( lv_data ).

  ENDIF.

ENDMETHOD.

METHOD on_pbo.
  me->init_controls( ).
ENDMETHOD.

Unterschrift im SAP-System speichern

Der Rückgabewert von get_value() ist eine Daten-URL der Form data:image/png;base64,iVBORw0KGgo.... Trennen Sie den Präfix data:image/png;base64, ab und konvertieren Sie den Base64-Anteil mit cl_http_utility=>decode_x_base64() in ein XSTRING – damit lässt sich das Bild z.B. in einem MIME-Repository oder als BLOB in einer Tabelle ablegen.

Events im Designer

EventAuslöser
onSaveUnterschrift erfasst / gespeichert

Nächste Schritte

  • Image – Anzeige der erfassten Unterschrift
  • Upload – Datei-Upload als Alternative