Expand my Community achievements bar.

Latest Community Ideas Review is Out: Discover What’s New and What to Expect!

Help with Text Mode in a column

Avatar

Level 1

Looking for some thoughts/help with creating a custom column on both project and task reports.

 

I want to create a column called "Final Deliverable Due Date" that would display the due on date tied to a specific task. The name of the task varies across our project templates but they all contain "Go Live" in the task name. The date should show regardless of whether the task can be started or not. 

 

We currently have a manual field in the custom form for final deliverable date, but trying to automated since our PMs largely make adjustments on the project timeline and not in the form. Also this date would be different than the planned completion date of the project. 

 

Thanks for any input. 

2 Replies

Avatar

Community Advisor

Hi @cma1 - I added some text mode starting points below, hope this helps!

 

Project Level Report

**Disclaimer: The below text mode assumes the name of the task is "Go Live" and doesn't include a contains statement. I don't know from this documentation if a contains is possible on an IF statement, but maybe someone else from the community page can provide input. This might help you get started though!

displayname=Final Deliverable Due Date
listdelimiter=<div>
listmethod=nested(tasks).lists
textmode=true
type=iterate
valueexpression=IF({name}="Go Live",CONCAT("",{plannedCompletionDate}),"")
valueformat=HTML

 

Task Level Report

Note: I copied the text mode for this, but you can really just go Advanced Options > Add a Rule on this Column on a Planned Complete Date column and change the back-end to Task > Name contains Go LiveScreenshot 2023-07-17 153928.png

valuefield=plannedCompletionDate
querysort=plannedCompletionDate
valueformat=atDate
displayname=Final Deliverable Due Date
linkedname=direct
namekey=plannedCompletionDate
styledef.case.0.comparison.leftmethod=name
styledef.case.0.comparison.lefttext=name
styledef.case.0.comparison.righttext=Go Live
styledef.case.0.comparison.operator=cicontains
styledef.case.0.comparison.operatortype=string
styledef.case.0.comparison.icon=false
styledef.case.0.comparison.truetext=

 

Avatar

Community Advisor

Hi,

 

Just following on from @VictoriaLinn's great advice, you can use a contains operator within an IF statement. So your text mode would look like this in a project report:

 

displayname=Final Deliverable Due Date
listdelimiter=<div>
listmethod=nested(tasks).lists
textmode=true
type=iterate
valueexpression=IF(CONTAINS("Go Live",{name}),CONCAT({name},"-"{plannedCompletionDate}),"")
valueformat=HTML

 

What this text mode is doing is looping through all of the tasks in your project, and looking for tasks that contain "Go Live" in the name. If a task does have "Go Live" in the name, it will add it to a list in your view showing the task name followed by the planned completion date.

 

A great article on Experience League of all the different text mode operators you can use is here.

 

Hope this helps!

 

Best Regards,

Rich.