MaskInput
The sap.m.MaskInput control allows users to easily enter data in a certain format and in a fixed-width input (for example: date, time, credit card number, and others).
Z2UI5_CL_SMPC_APP_153
Controls
sap.m
UI5 1.96
The facts
- Repository
- abap2UI5/samples-controls
- Class
Z2UI5_CL_SMPC_APP_153- Source file
z2ui5_cl_smpc_app_153.clas.abap↗- Library
- sap.m
- UI5 entity
sap.m.MaskInput- Demo kit sample
sap.m.sample.MaskInput- SAP's own sample
- running at sdk.openui5.org ↗
- Minimum UI5
- 1.96
- In the playground
- runs in the browser, with no system and nothing installed
Keywords: maskinput, mask, input, sap.m, rules, app, simpleform, label, maskinputrule
Controls it builds
- sap.m.App
- sap.m.Label
- sap.m.MaskInput
- sap.m.MaskInputRule
- sap.m.Page
- sap.ui.core.mvc.View
- sap.ui.layout.form.SimpleForm
Read out of the builder chain by the abap2UI5 linter, not from the category this sample is filed under — which is what makes “which samples build one of these” a question the catalogue can answer at all.
Libraries
Run it here
The sample running, in this page — the app on its own, with no editor over it.
Switch to Playground with this code
Nothing is installed and nothing is sent anywhere: the ABAP is compiled to JavaScript in this browser and runs against abap2UI5 itself.
The ABAP
z2ui5_cl_smpc_app_153.clas.abap — 135 lines
Click a number to link to a line — shift-click for a range.
Read it on GitHub ↗
" @keywords maskinput mask input sap.m rules app simpleform label maskinputrule
" @summary The sap.m.MaskInput control allows users to easily enter data in a certain format and in a fixed-width input (for example: date, time, credit card number, and others).
CLASS z2ui5_cl_smpc_app_153 DEFINITION PUBLIC.
PUBLIC SECTION.
INTERFACES z2ui5_if_app.
DATA showclearicon TYPE abap_bool.
PROTECTED SECTION.
DATA client TYPE REF TO z2ui5_if_client.
METHODS view_display.
PRIVATE SECTION.
ENDCLASS.
CLASS z2ui5_cl_smpc_app_153 IMPLEMENTATION.
METHOD z2ui5_if_app~main.
me->client = client.
IF client->check_on_init( ).
" the original binds {/showClearIcon} but sets no model - the binding
" stays unresolved and the property keeps its default false
showclearicon = abap_false.
view_display( ).
ELSEIF client->check_on_navigated( ).
view_display( ).
ENDIF.
ENDMETHOD.
METHOD view_display.
DATA(view) = z2ui5_cl_ui5_view_builder=>factory( ).
view->ele( n = `View` ns = `mvc`
)->a( n = `xmlns:mvc` v = `sap.ui.core.mvc`
)->a( n = `xmlns:form` v = `sap.ui.layout.form`
)->a( n = `height` v = `100%`
)->a( n = `xmlns` v = `sap.m`
)->ele( `App`
)->ele( `Page`
)->a( n = `showHeader` v = `false`
)->ele( n = `SimpleForm` ns = `form`
)->a( n = `title` v = `Generic Mask Input`
)->a( n = `editable` v = `true`
)->a( n = `layout` v = `ColumnLayout`
)->tag( `Label`
)->a( n = `text` v = `Unique ID`
)->ele( `MaskInput`
)->a( n = `mask` v = `~~~~~~~~~~`
)->a( n = `placeholderSymbol` v = `_`
)->a( n = `placeholder` v = `All characters allowed`
)->ele( `rules`
)->tag( `MaskInputRule`
)->a( n = `maskFormatSymbol` v = `~`
)->a( n = `regex` v = `[^_]`
)->end(
)->end(
)->tag( `Label`
)->a( n = `text` v = `Promo code`
)->ele( `MaskInput`
)->a( n = `mask` v = `**********`
)->a( n = `placeholderSymbol` v = `_`
)->a( n = `placeholder` v = `Latin characters (case insensitive) and numbers`
)->ele( `rules`
)->tag( `MaskInputRule`
)->end(
)->end(
)->tag( `Label`
)->a( n = `text` v = `Phone number`
)->tag( `MaskInput`
)->a( n = `mask` v = `(999) 999 999999`
)->a( n = `placeholderSymbol` v = `_`
)->a( n = `placeholder` v = `Enter twelve-digit number`
" showClearIcon is @since 1.96 - kept 1:1 (POST_171)
)->a( n = `showClearIcon` v = `true`
)->end(
)->ele( n = `SimpleForm` ns = `form`
)->a( n = `title` v = `Possible usages (may require additional coding)`
)->a( n = `editable` v = `true`
)->a( n = `layout` v = `ColumnLayout`
)->tag( `Label`
)->a( n = `text` v = `Serial number`
)->ele( `MaskInput`
)->a( n = `mask` v = `CCCC-CCCC-CCCC-CCCC-CCCC`
)->a( n = `placeholderSymbol` v = `_`
)->a( n = `placeholder` v = `Enter digits and capital letters`
)->a( n = `showClearIcon` v = client->_bind( showclearicon )
)->ele( `rules`
)->tag( `MaskInputRule`
)->a( n = `maskFormatSymbol` v = `C`
)->a( n = `regex` v = `[A-Z0-9]`
)->end(
)->end(
)->tag( `Label`
)->a( n = `text` v = `Product activation key`
)->ele( `MaskInput`
)->a( n = `mask` v = `SAP-CCCCC-CCCCC`
)->a( n = `placeholderSymbol` v = `_`
)->a( n = `placeholder` v = `Starts with 'SAP' followed by digits and capital letters`
)->a( n = `showClearIcon` v = client->_bind( showclearicon )
)->ele( `rules`
)->tag( `MaskInputRule`
)->a( n = `maskFormatSymbol` v = `C`
)->a( n = `regex` v = `[A-Z0-9]`
)->end(
)->end(
)->tag( `Label`
)->a( n = `text` v = `ISBN`
)->tag( `MaskInput`
)->a( n = `mask` v = `999-99-999-9999-9`
)->a( n = `placeholderSymbol` v = `_`
)->a( n = `placeholder` v = `Enter thirteen-digit number`
)->a( n = `showClearIcon` v = client->_bind( showclearicon ) ).
client->view_display( view->stringify( ) ).
ENDMETHOD.
ENDCLASS.
More in sap.m
- Semantic Page Full Screen — Semantic Page Full Screen
- Semantic Page using Floating Footer — Integration of Floating Footer inside Semantic Page
- Semantic Page Master-Detail — Semantic Page Master/Detail
- Planning Calendar - without row header — PlanningCalendar with only one row without row header. On click on an interval a new appo…
- Single Planning Calendar with Multiple Date Selection — SinglePlanningCalendar with multiple date selection functionality.
- Upload Set — This sample shows an Upload Set control with a list of files to be uploaded and actions y…
- Formatted Text — The control can be used for embedding formatted HTML text into your application.
- Check Box — Checkboxes allow users to select a subset of options. If you want to offer an off/on sett…
- Numeric Content of Different Colors — Shows NumericContent including numbers, units of measurement, and status arrows indicatin…
- Header Container - Vertical Mode — The Header Container with a vertical layout and with divider lines.
- Flex Box - Gap, Row Gap & Column Gap — You can add gap between rows and columns.
- Input - Types — Input type corresponds to the type attribute of the HTML input tag. On touch devices, it…
On this page