Follow
Most Requested Reporting Text Edits

VIEWS

1. Status Timestamp

IF(Status='INP',IF(ISBLANK({DE:Custom Field}),$$NOW,{DE:Custom Field}),{DE:Custom Field})

This is a calculated field on a custom form (labeled “DE: Custom Field”) that enables you to capture the timestamp of the change to INP (works for other statuses, too). Status timestamp custom field can then be reported on normally. Note that if your status changes to INP, then another status, then back to INP, only the timestamp of the first change to INP will be captured.

 

2. TIME Between Status Changes

valueexpression=DATEDIFF({DE:Status Timestamp},{entryDate})

Requires creation of custom field in #1 as “DE:Status Timestamp”.

 

3. Displaying an Image in a Report

displayname=Link Project

image.name=Link Project

image.valuefield=URL

link.linkproperty.0.name=projectID

link.linkproperty.0.value=ID

link.lookup=link.edit

link.page=/view

link.valuefield=objCode

link.valueformat=val

textmode=true

type=image

valueformat=

You must insert the URL for the image into the URL field in the project details, then use the above code to replace a column in text mode in the view area of the report, then any image linked via the URL in the project details will show up as a column. Images appear in their actual resolution so try to use small images! This example is for projects, but applies to any object with a URL in the system details.

 

4. Column Widths

“usewidths=true” – one time at beginning of text mode

“width=<number>” – use once per column, = width in pixels

 

5. Export with Indented Child Tasks

valueexpression=IF({indent}<1,{name},IF({indent}<2,CONCAT(" - ",{name}),IF({indent}<3,CONCAT(" - - ",{name}),IF({indent}<4,CONCAT(" - - - ",{name}),CONCAT(" - - - - ",{name})))))

Essentially adds dashes for up to 4 layers of subtasks to task name. May be best to add this temporarily, export, then remove; or copy an existing report and rename.

 

6. Collections

valueformat=HTML

listdelimiter=<br>
textmode=true

valueexpression={name}

type=iterate

listmethod=nested(collection).lists

displayname=Column Name

For eligible objects, you can see a one to many relationship – for example, show task data from a project report. To see a list of eligible objects, reference the API explorer at  https://developers.workfront.com/apidocs/api-explorer/. Search for the object your report is based on then select the “collections tab. Insert the collection you would like to reference over the word ‘collection’ in the listmethod line above.

 

 

GROUPINGS

7. Renaming Groupings

(1)

group.0.linkedname=project

group.0.namekey=view.relatedcolumn

group.0.valuefield=project:name*

group.0.namekeyagrgkey.0=project

group.0.namekeyargkey.1=name

group.0.valueformat=string*

textmode=false*

(2)

group.0.valuefield=project:name*

group.0.valueformat=string*

textmode=false*

group.0.name=<insert repeat text or blank>

 

If you change the default text mode on grouping naming from the first example to the second one, you will rename the grouping bar.

 

8. Convert a GUID to a Name

Switch “ownerID” to “owner:name” in text mode

 

9. Limiting a Count to Unique or Distinct Items

Add a “D” in front of the count in text mode, e.g. “DCNT” from the view area to change how this displays in the grouping

 

 

FILTERS

10. Switch a Status Filter from Status to Status:Pending Approval

Add a “:A” to the valuefield, e.g. status=NEW:A

Status_Mod=in – this should already be there if you started with a status filter first

 

11. Filter to when Actual Completion is Greater than Planned Completion

actualCompletionDate=FIELD:plannedCompletionDate

actualCompletionDate_Mod=gt

We recommend starting with a compare a date field to a date, then modifying it in text mode – after that, you can actually select the field from the filter builder