Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Warning

If you are upgrading from 1.30 and you have configurations using "virtual functions" which collect the data from multi-select fields then please be aware, that the standard behaviour has chnaged to return ID's, and NOT labels of the fields

If you need to have labels then a transform operation is needed. See "transform" function in Virtual functions for details

But, basically, you will need to call on your multiselect field something like this (for example, and assuming your multiselect field is called "mymultiselectfield"):

Code Block
mymultiselectfield.transform(label).asArrayMultiSelect

Before 1.30

Code Block
mymultiselectfield.asArrayMultiSelect

was returning field labels, now (without a transformation) it returns ID's

 

 



Info

Accessing rich properties is also supported in ConfiForms Field macros. Giving myfield.subproperty as a field name is totally valid and supported. For smart fields this can be of any level deep, but please keep in mind the performance issues this might cause (as values are lazy loaded for each sub-field for "smart" fields).

Warning

Make sure the [entry.myfield] is actually stored the way you see it, as sometimes Confluence editor injects some "invisible to user" blocks of HTML, such as spans... and the text becomes actually something like [entry.<span>myfield</span>] which makes it not to work correctly with ConfiForms parser.

The easiest way to see that text is clean is by looking at storage format of the page (using Tools menu and then clicking on "View Storage format" or by installing a free add-on from Atlassian which enables you to see raw storage format directly in the Confluence editor - https://marketplace.atlassian.com/plugins/com.atlassian.confluence.plugins.editor.confluence-source-editor/server/overview)

...


Here is the table showing you how to reference field values for different field types. Our field name is: "myfield"

Field typeAccessing in ConfiForms Field macroAccessing though [entry.] notationUsing in filtersSortingRemarks
Textmyfield[entry.myfield]

myfield:*test

myfield:test*

myfield:*test*

myfield:*

as text
 

Action ButtonmyfieldN/AN/AN/AN/A
Autolinkmyfield[entry.myfield]same as text fieldas textonly dynamic part is taken when shown as [entry.] notation
Autonumbermyfield[entry.myfield]same as text fieldas textautonumber with previx
AutopagemyfieldSee page typeSee page typeSee page typeSee page type
Calculatedmyfield[entry.myfield]Same as numeric fieldas numbernon-numeric values are set as 0 in sorting
CaptchamyfieldN/AN/AN/AN/A
Checkboxmyfield[entry.myfield]myfield:true
 

Returns true or false
Checkbox groupmyfield[entry.myfield]myfield:*fieldvalue* to ensure it is matchedas text
 

Currencymyfield[entry.myfield]Same as numeric fieldas number
 

Date

myfield

myfield.timestamp

[entry.myfield] 

[entry.myfield.timestamp] 

Same as numeric fieldas number

timestamp value

Date and Datetime field types allow the following metaparams to be given as input

[now], [tomorrow], [yesterday], [today], [today]-days(n), [datetimeyyyyMMdd HH:mm], [dateyyyyMMdd]

Basically, same as in ConfiForms Filters

Datetime

myfield

myfield.timestamp

[entry.myfield] 

[entry.myfield.timestamp] 

Same as numeric fieldas number

timestamp value

See above

Datetime interval

myfield

myfield.startDateFormatted

myfield.endDateFormatted

myfield.startDate

myfield.endDate

myfield.asPeriodFormatted

[entry.myfield]

[entry.myfield.startDateFormatted]

[entry.myfield.endDateFormatted]

[entry.myfield.startDate]

[entry.myfield.endDate]

[entry.myfield.asPeriodFormatted]

myfield.startDate:

myfield.endDate:

conditions as in numeric field

as number by start datetimestamp value
DB dropdown

myfield

myfield.id

myfield.label

see remarks ->
 
 


Same as normal dropdown
DB multi-selectmyfieldsee remarks ->
  


Same as normal multi-select
DB radio groupmyfieldsee remarks ->
  


Same as normal radio group
DB checkboxmyfieldsee remarks ->
  


Same as normal checkbox
Drawing canvasmyfieldN/AN/AN/Ainternal format is returned
Dropdown

myfield

myfield.id

myfield.label

[entry.myfield]

[entry.myfield.id]

[entry.myfield.label]

myfield:ID

myfield.label:LABEL

as text

Each dropdown choice has ID and LABEL

[entry.myfield] returns ID

Dynamic Dropdown

myfield

myfield.id

myfield.label


[entry.myfield]

[entry.myfield.id]

[entry.myfield.label]


myfield:*fieldvalue* to ensure it is matchedas text

Each dropdown choice has ID and LABEL

[entry.myfield] returns ID

Dynamic Multilabel

myfield

myfield.id

myfield.label


[entry.myfield]

[entry.myfield.id]

[entry.myfield.label]


myfield:*fieldvalue* to ensure it is matchedas text

Each choice has ID and LABEL

[entry.myfield] returns ID

Enroll buttonmyfieldN/AN/AN/A
 

Filemyfield[entry.myfield] - will show as linksame as text, see remarksas textonly attachment/file name is in search
Formulamyfield[entry.myfield]same as numeric fieldas numbernon-numeric values are set as 0 in sorting
Htmlmyfield[entry.myfield]same as text typeas text
 

Linkmyfield[entry.myfield]same as text typeas text
 

Hiddenmyfield[entry.myfield]same as text typeas text
 

Masked Textmyfield[entry.myfield]same as text typeas text
 

Multi Selectmyfield[entry.myfield]same as dropdown (ID and LABEL properties)as text
 

Numeric fieldmyfield[entry.myfield]

myfield:>=

myfield:>

myfield:<=

myfield:<

myfield:

as number
 

JIRA issue

myfield

myfield.key

myfield.title

myfield.summary (same as title)

myfield.description

myfield.link

myfield.status

 


Status
colourGreen
titlev 1.35.5

Any JIRA field which is provided via JIRA REST API

For example:

myfield.fields.assignee.emailAddress

myfield.fields.reporter.displayName

See also: Using Field Definition Rule to request data from JIRA and set it to ConfiForms fields


[entry.myfield]

[entry.myfield.key]

[entry.myfield.title]

 

[entry.myfield.summary] (same as title)

[entry.myfield.description]

[entry.myfield.link]

[entry.myfield.status]

same as text type and only by keyas text
 

Page/Blog post

myfield

myfield.* - see remarks

[entry.myfield]

[entry.myfield.*] - see remarks

same as text, for properties list see remarksas text, by default pageIdall properties of

AbstractPage class (see Confluence API docs)

Examples:

method in classHow to access
getSpaceKey()myfield.spaceKey
getCreatorName()myfield.creatorName
getVersion()myfield.version
getCreationDate()myfield.creationDate
... any other get method from Page class
 

Passwordmyfield[entry.myfield]same as text typeas text
 

Radio group

myfield

myfield.id

myfield.label


[entry.myfield]

[entry.myfield.id]

[entry.myfield.label]

myfield:ID

myfield.label:LABEL

as text

Each choice has ID and LABEL

[entry.myfield] returns ID

Readonlymyfield[entry.myfield]same as text typeas text
 

SectionmyfieldN/AN/AN/A
 

Simple Datemyfield[entry.myfield]Same as numeric fieldas numbertimestamp value
Smart Classifier

myfield

myfield.* - see remarks

[entry.myfield]

[entry.myfield.*] - see remarks

Depends on a field referenced. If [entry.myfield] or just "myfield" is referenced then in most cases it acts as text.

But with "smart fields" you reference a record in another form and that means through this reference you can get ANY field of that record, including other smart fields. That said, you can build quite a property graph to get any value, which is lazy loaded for you

depends on a field referenced

Properties you can access totally depend on a structure of the record in the form you reference. You can access ANY field value through this notation, including other smart fields which will be lazy loaded for you.

Example:

Code Block
[entry.myfield.field_in_another_form]
[entry.myfield.amopther_smart_in_another_form.somefield]
Smart Dropdown

myfield

myfield.* - see remarks

[entry.myfield]

[entry.myfield.*] - see remarks

See Smart Classifierdepends on a field referencedSee Smart Classifier
Smart Multiselect

myfield

myfield.* - see remarks

[entry.myfield]

[entry.myfield.*] - see remarks

See Smart Classifierdepends on a field referencedSee Smart Classifier
Smart Checkbox

myfield

myfield.* - see remarks

[entry.myfield]

[entry.myfield.*] - see remarks

See Smart Classifierdepends on a field referencedSee Smart Classifier
Smart Radio buttons

myfield

myfield.* - see remarks

[entry.myfield]

[entry.myfield.*] - see remarks

See Smart Classifierdepends on a field referencedSee Smart Classifier
Status

myfield

myfield.id

myfield.label

[entry.myfield]

[entry.myfield.id]

[entry.myfield.label]

Same as dropdown field, with IDs and LABELs. But has predefined values for IDs (depending on a colour)

as textSee remarks for dropdown field
Textareamyfield[entry.myfield]same as text typeas text
 

User

myfield

myfield.username

myfield.fullName

myfield.picture

myfield.email

myfield.lastName

myfield.firstName

[entry.myfield]

[entry.myfield.username]

[entry.myfield.fullName]

[entry.myfield.picture]

[entry.myfield.email]

[entry.myfield.lastName]

[entry.myfield.firstName]

same as text type, but you can query for field properties:

myfield:

myfield.username:

myfield.fullName:

myfield.picture:

myfield.email:

myfield.lastName:

myfield.firstName:

as text, see remarks

sorting is by username field

lastName and firstName are synthetic properties, which we try to extract from a given fullName.

We consider las word as lastName and what is given before is taken as firstName. This solution does not work for the whole world, but this is the best option we can offer you at the moment

User (multiselect)myfield

[entry.myfield]

[entry.myfield.asUserFullNames]

[entry.myfield.asUserEmails]

* - see remarks

Same as Useras text

You can show user full names in a list, or emails or (when no helper function is used) as list of usernames

See Virtual functions

Voting controlmyfieldN/AN/AN/AN/A
WYSIWYG simple editormyfield[entry.myfield]same as text typeas text
 

 



Accessing through [entry.] notation can be used in ListView, in PlainView, in CalendarView and in IFTTT macro body, as well as when referencing ConfiForms record fields in macro parameters

...

Additional values available in the context

Panel
borderStylenone
Variable
 


[owner]current record owner (ownedBy field) or Anonymous (when user is "Anonymous")

[modifier]

[user]

current record modifier (User's full name)
[now]Current timestamp
[user.name]current user's username
[user.fullName]current user's full name
[user.email]current user's email
[entry._user]current user object (can access email, name, and fullname, see accessing properties for user fields)User field
[entry._now]current timestamp, which can be converted to date using Virtual functions or used for comparison against other date/datetime fieldsDatetime
[entry._page]current page id (present in most cases, but not always)Page
[entry._today]current timestamp (for date, without time)

...

Date