Hi, in fields that have Amount, how can i see the value with decimal and symbol ?
Example
150,00 €
thanks!
Hi, in fields that have Amount, how can i see the value with decimal and symbol ?
Example
150,00 €
thanks!
Hi Ivan,
for Table and Label you can use Formatter Formatter - CUBA Platform. Developer’s Manual. For editable Fields it is not supported, but you can add label with a currency symbol to the right of a Field manually.
Hi,
a possible solution would be to use a masked text field. But it will require the user to always fill the pre defined number of digits.
@Yuriy, since i had the same problem some time: is this possible when the field is used (as default via scaffolding) within a fieldGroup? If not would it be possible to think about an addition where after the edit field another label for something like a currency symbol or a help icon or something else can be placed within the fieldGroup definition?
Bye,
Mario
We are planning to add special type of text field - CurrencyField in one of the next minor releases, probably in 6.4.
For now you can add a label with a currency symbol for TextField inside of FieldGroup manually using custom field:
Custom field in screen XML:
<fieldGroup id="fieldGroup"
datasource="productDs">
<column width="250px">
<field id="title"/>
<field id="price" custom="true"/>
</column>
</fieldGroup>
Java controller:
public class ProductEdit extends AbstractEditor<Product> {
@Inject
private FieldGroup fieldGroup;
@Inject
private ComponentsFactory componentsFactory;
@Override
public void init(Map<String, Object> params) {
super.init(params);
fieldGroup.addCustomField("price", (datasource, propertyId) -> {
HBoxLayout hBox = componentsFactory.createComponent(HBoxLayout.class);
hBox.setSpacing(true);
hBox.setWidth("100%");
TextField textField = componentsFactory.createComponent(TextField.class);
textField.setDatasource(datasource, propertyId);
hBox.add(textField);
hBox.expand(textField);
Label currencyLabel = componentsFactory.createComponent(Label.class);
currencyLabel.setAlignment(Alignment.MIDDLE_CENTER);
currencyLabel.setStyleName("h2");
currencyLabel.setValue("$");
hBox.add(currencyLabel);
return hBox;
});
}
}
Any update on the CurrencyField?
Hi,
at the moment implementation is scheduled to 6.5 release.
It’s done now. But the way it is implemented is sadly of no use for us, as the currency is not static, it’s part of the model and can change.
This use case is one among others that we would like to be implemented : see this thread
If your currency is set from data, just set it to UI component programmatically and do not use @CurrencyValue
annotation. Use CurrencyField.setCurrency()
Sure, but it does not fit our model where currency is an editable attribute like any other.