OpenUI5 offers a set of simple data types, including Boolean, Currency, Date and Float. You can apply these data types to controls to ensure that the value displayed on the screen is formatted correctly. If the field is open for input, this also ensures that the user input meets the requirements of that data type. Let’s add a new field called Sales Amount of type Currency.
An input field for a currency amount is added to the second panel

You can view and download all files in the Demo Kit at Data Binding - Step 10.
Add two new JSON model properties, salesAmount and currencyCode, to the data.json file.
webapp/model/data.json
{
"firstName": "Harry",
"lastName": "Hawk",
"enabled": true,
"address": {
"street": "Dietmar-Hopp-Allee 16",
"city": "Walldorf",
"zip": "69190",
"country": "Germany"
},
"salesAmount": 12345.6789,
"currencyCode": "EUR"
}
Add the highlighted XML code to the App.view.xml file.
webapp/view/App.view.xml
<mvc:View
controllerName="ui5.databinding.controller.App"
xmlns="sap.m"
xmlns:core="sap.ui.core"
xmlns:form="sap.ui.layout.form"
xmlns:l="sap.ui.layout"
xmlns:mvc="sap.ui.core.mvc"
core:require="{Currency: 'sap/ui/model/type/Currency'}">
<Panel headerText="{i18n>panel1HeaderText}" class="sapUiResponsiveMargin" width="auto">
<form:SimpleForm editable="true" layout="ColumnLayout">
<Label text="{i18n>firstName}"/>
<Input value="{/firstName}" valueLiveUpdate="true" width="200px" enabled="{/enabled}"/>
<Label text="{i18n>lastName}"/>
<Input value="{/lastName}" valueLiveUpdate="true" width="200px" enabled="{/enabled}"/>
<Label text="{i18n>enabled}"/>
<CheckBox selected="{/enabled}"/>
</form:SimpleForm>
</Panel>
<Panel headerText="{i18n>panel2HeaderText}" class="sapUiResponsiveMargin" width="auto">
<content>
<l:HorizontalLayout>
<l:VerticalLayout>
<Label labelFor="address" text="{i18n>address}:"/>
<FormattedText class="sapUiSmallMarginBottom"
htmlText="{/address/street}<br>{/address/zip} {/address/city}<br>{/address/country}"
id="address" width="200px"/>
<Link href="{
parts: [
'/firstName',
'/lastName'
],
formatter: '.formatMail'
}"
text="{i18n>sendEmail}"/>
</l:VerticalLayout>
<l:VerticalLayout>
<Label labelFor="salesAmount" text="{i18n>salesAmount}:"/>
<Input description="{/currencyCode}" enabled="{/enabled}" id="salesAmount"
value="{
parts: [
{path: '/salesAmount'},
{path: '/currencyCode'}
],
type: 'Currency',
formatOptions: {showMeasure: false}
}" width="200px"/>
</l:VerticalLayout>
</l:HorizontalLayout>
</content>
</Panel>
</mvc:View>
We’ve created a new pair of Label and Input elements for the salesAmount model property. The description property of the Input element is bound to the currencyCode model property. The value property of the Input element is bound to the model properties salesAmount and currencyCode. The {showMeasure: false} parameter switches off the display of the currency symbol within the input field itself. This isn’t necessary because the currency symbol is displayed using the Input element’s description property.
Add the highlighted texts to the properties files. Remember, you need to enter special characters (non-Latin-1) using Unicode escape characters.
webapp/i18n/i18n.properties
# Field labels
firstName=Vorname
lastName=Nachname
enabled=Enabled
address=Address
salesAmount=Sales Amount
...
webapp/i18n/i18n_de.properties
# Field labels
firstName=Vorname
lastName=Nachname
enabled=Aktiviert
address=Adresse
salesAmount=Verk\u00e4ufe bis zum heutigen Datum
...
Parent topic:Data Binding Tutorial
Next:Step 9: Formatting Values
Previous:Step 11: Validation Using sap/ui/core/Messaging
Related Information