From 9e9f2668785e82f64334c158dfa2fc339636a705 Mon Sep 17 00:00:00 2001 From: Darin Kelkhoff Date: Tue, 25 Jun 2024 13:31:13 -0500 Subject: [PATCH] CE-1402 Add CaseChangeBehavior sub-section --- docs/metaData/Fields.adoc | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/docs/metaData/Fields.adoc b/docs/metaData/Fields.adoc index eb20fa84..da4f0993 100644 --- a/docs/metaData/Fields.adoc +++ b/docs/metaData/Fields.adoc @@ -117,3 +117,19 @@ new QTableMetaData().withName("flights").withFields(List.of( .withBehavior(new DateTimeDisplayValueBehavior() .withDefaultZoneId("UTC")) ---- + +===== CaseChangeBehavior +A field can be made to always go through a toUpperCase or toLowerCase transformation, both before it is stored in a backend, +and after it is read from a backend, by adding a CaseChangeBehavior to it: + +[source,java] +.Examples of using CaseChangeBehavior +---- +new QTableMetaData().withName("item").withFields(List.of( + + new QFieldMetaData("sku", QFieldType.STRING) + .withBehavior(CaseChangeBehavior.TO_UPPER_CASE)), + + new QFieldMetaData("username", QFieldType.STRING) + .withBehavior(CaseChangeBehavior.TO_LOWER_CASE)), +----