Expand my Community achievements bar.

DIsplaying multiple publish dates in a report

Avatar

Level 2
Hello, Not sure if anyone has come across an issue like this. We maintain an editorial dashboard that tracks email release times by week. By consolidating all our email sends, we are able to quickly assess our traffic (and pull back on specific emails if we feel that recipients are receiving too many in any given week). Most of our email projects only require one send. However, we are now fielding requests for Journey emails which may require multiple sends. Our intake form allows the requestor to indicate multiple dates; for instance, the initial email can be scheduled for September 10th, with follow on sends September 15th, 20th, 25th, etc... The custom fields are named "2nd Publish Date," "3rd Publish Date," etc.. As the report is grouped by week, we would like the report to show each separate send - in other words, not just the initial Sept 10th send, but separate line items for all the subsequent sends as well. I'm looking for the code that would allow the report to show all subsequent sends. Thank you! William Harnett Federal National Mortgage Association (Fannie Mae)
Topics

Topics help categorize Community content and increase your ability to discover relevant content.

17 Replies

Avatar

Level 10
Right now you're grouping by one field: publication date. Grouping by multiple fields (i.e. can we group by Publication Date, as well as Publication Date 2, 3, 4, ad infinitum?) isn't possible. I suggest you think of ways to make these the same field. This could be as simple as creating a second project to house the second publication date (and so on). Or it could involve housing the publication date on a task and creating multiple tasks in the same project--going this route will probably involve changing your report to look at and group by the task data. -skye

Avatar

Level 3
I agree with Skye's assessment on this, and for us that last approach works well, and has a ton of advantages: " housing the publication date on a task and creating multiple tasks in the same project" We initiate through a request queue with custom date fields similar to yours. But when we convert to project we include a unique task for each of those publish dates (one task or several tasks). Each of those publish date tasks makes use of a single custom drop down field for metadata ( "1st Publish Date" , "2nd Publish Date" , "3rd Publish Date" , etc). Easy to run a variety of task reports based on any task with that custom metadata field. Also possible to build calendars using those task dates. The Project Manager can see the publish dates inline in their task list to assess if work is happening at the correct times. Justin White Quality Bicycle Products

Avatar

Community Advisor
Hi William, I just read Skye and Justin's sage advice to your interesting question, and heartily agree that leveraging the 1:many relationship of Project to Task to generate distinct, reportable dates is an excellent approach, which also: allows a different assignment, duration, priority, amount of work, etc. for each such unique Task exposes the powerful concept of setting predecessors (e.g. start to finish, start to start, etc) with or without lags (e.g. +7d, etc) for dynamic scheduling exposes the equally powerful concept of task constraints (e.g. ASAP, Must Start On, Finish No Later Than, etc) for static scheduling fits neatly (and best) into the native Resource and Capacity management features can be efficiently added to a Project using a "mini" template (e.g. a "10-pack" of Release Tasks) should trouble or concern arise for any such unique Task, then supports the native Issue(s) creation that can be tracked and dealt with separately Regards, Doug P.S. In my opinion, Workfront Tasks are normally best used for (planned) work items whose (known) duration will impact a Project's completion, and Workfront Issues are best for (unplanned) work items whose (unknown or immaterial) duration does not. So, wondering if you might consider these release work items "routine enough" that they might seem more natural as an Issue rather than a Task, I had brief debate with myself about that possibility (or, briefly but similarly, as 1:many Expenses, or Documents ,or Notes). But after a brief struggle, in short: I lost. Using Tasks is the best approach. Doug Den Hoed - AtAppStore Got Skills? Lend a hand! https://community.workfront.com/participate/unanswered-threads

Avatar

Level 2
Thanks Skye, that's very helpful. I went ahead and took your suggestion - created multiple tasks in the same project. However, I still can't get the report to display a separate line item for each send. Do you know of a way that I could report on task level dates in our project level report? William Harnett Federal National Mortgage Association (Fannie Mae)

Avatar

Level 10
I can give it a shot. Generically speaking, you have 2 options: 1) Reference the task collection in your project report: https://experience.workfront.com/s/article/Referencing-Collections-in-a-Report-779518987 2) Report on the tasks using a task report and then group by project. Both of these have their pros and cons. I noticed you want to stay with a project level report so it would seem like you have already made up your mind to go the more difficult route. Depending on how you've set up the multiple tasks, you'll be able to set up your report according to the unique features of those send tasks. Going with a task report would be a better option frankly -- and I say this without knowing anything about your situation. The reason being that this will allow you to more easily show on a weekly basis which send tasks are due. It's relatively simple to also display project information for each send task, so you're not losing out on anything there. Either way though, take your pick and have fun experimenting. -skye

Avatar

Level 2
Thank you Skye, that's very helpful - I'll give it a shot Sincerely, Bill William Harnett Federal National Mortgage Association (Fannie Mae)

Avatar

Level 3
I'm not sure if this helps you or not but these are the things I use to do what I think you are trying to do. When you say "a separate line item" I assume you mean as additional rows, but the only way I know of to do that is a task report. However either a matrix report or a project report can be made to show those publish dates in columns if that works for you. Method one: A task report, filtered to only show any active task that is a publish date task, grouped by plannedStartDate (set to week), with a column showing project name, a column showing which publish date this task represents (usually task name or some metadata), and a column showing plannedStartDate. Notes: this method works the best for us most often, as it offers the good flexibility and the text mode isn't about constantly running collections. Method two (really it's more like one point five): Run a task report as a matrix, with project names along the left, publish dates across the top, and each matrix cell in the middle shows the plannedStartDate for the corresponding email. Notes: these are kind of a pain to setup sometimes, depending on your data, but it can sometimes be a nice way to scan a full agenda, and each publish date for a campaign/journey is nicely in a row. Method three: A project report sorted by whatever seems useful (usually campaign or budget for us), with a column for each publish date (blank if none) Notes: Similar to a matrix but requires text mode and can get complicated. Can offer more customization & information than a matrix. You can't group rows by email publish dates here because there is only one row result per project. Here is some project report text mode to make a column for a single publish date (below). It assumes that you will always use the same task name for your first publish date tasks across all projects. displayname=Publish Date 1 listdelimiter=‍ listmethod=nested(tasks).lists textmode=true type=iterate valueexpression=IF({name}="Your Publish Date 1 Task Name",{plannedStartDate},"") valueformat=HTML Justin White Quality Bicycle Products

Avatar

Community Advisor

Hi Justin @skyehansen resurfacing this old thread. I'm in the need of having a task report with a column for each task in a template in many projects with shared cols of that task's planned start and end date in each cell for the respective column (task). 
Project name as my first column, then the subsequent columns being the task names and their start/end date as shared cols so share same cell in each row of project. Basically a matrix report but I'm not finding I can get dates in a matrix report, only hours/$. 
I tried the textmode above but coming up blank, maybe bc nothing is after list delimiter?

I have this as example of 1 of the tasks I want to bring into a column:
displayname=Initial Build
listmethod=nested(tasks).lists
textmode=true
type=iterate
valueexpression=IF({name}="Initial Build",{plannedStartDate},"")
valueformat=HTML

If this helped you, please mark correct to help others : )

Avatar

Community Advisor

sorry, not quite sure what you are asking for here, but keying off two items: your initial task report and the collection of nested tasks you are referencing, I will point out that this code in a task report will pull in the collection tasks IN YOUR TASK. In other words, you are trying to pull sub-tasks under each of your task lines.

 

If you were trying to pull other tasks in the same project, you might try the following instead:

 

listmethod=nested(project.tasks).lists

 

sorry if this isn't what you're looking for... the wording is just really unclear to me for some reason.

Avatar

Community Advisor

Here's what I'm trying to do. I have consistent task names in these projects bc using a template. I want the tasks' planned start and completion date in the report cells with a line break (shared cols) to see the dates for each of these tasks with the projects. Is this possible?

Madalyn_Destafney_0-1696357149265.png

If this helped you, please mark correct to help others : )

Avatar

Community Advisor

This is where I need help, I don't know what I need to achieve what I want. At first I thought a task report, but not sure. I don't care if it's a task or project report, I just need to show start/end dates of tasks that exist in many projects and show their dates in their respective project like I mocked up in my screenshot. 

If this helped you, please mark correct to help others : )

Avatar

Community Advisor

let's just try it as a project report, if you're that flexible. Were you able to get your code working in there? What happens if you put in the list delimiter and then do a sharecol with the next col that has a plannedCompletionDate? 

 

valueformat=HTML

textmode=true

type=iterate

listdelimiter=<p>

displayname=Initial Build

listmethod=nested(tasks).lists

valueexpression=IF({name}="Initial Build",{plannedStartDate},"")

 

Avatar

Community Advisor

Holy moly I tried for 1 task and shared cols and it's working! I can add in the other tasks now as columns - I was just starting with a task report when all along I needed a project report. Next curveball - how to do I get the % complete to be that task's % complete, not the project's, and how do I add a column for task status??

Madalyn_Destafney_0-1696359468875.png

If this helped you, please mark correct to help others : )

Avatar

Community Advisor

it's the same thing as your initial code. A bunch of collections columns, with valueexpressions like:

IF({name}="Initial Build",{percentComplete},"")

or

IF({name}="Initial Build",{status},"")

Avatar

Community Advisor

Ah I see. Thank you. I started adding more and seeing an obstacle. I have multiple tasks within same projects named exact same thing ,not just same task name across separate projects. Is there a way to indicate parent task in the value expression? Like can I pull in round 1's 'QA against bible....' task vs. same task under round 2, round 3, etc? We have 4 rounds in each project.  Thank you for your help!!

Madalyn_Destafney_0-1696361508708.png

If this helped you, please mark correct to help others : )

Avatar

Community Advisor

if you go into the API explorer for the task object, you'll see in the reference tab, a line item for "parent" so my guess is you'll have to go back and re-tool your valueexpression to incorporate "if parent name = " round 1, round 2, and so on.