Skip to main content
New Participant
September 20, 2019
Question

textmode for filtering custom form in template report?

  • September 20, 2019
  • 14 replies
  • 2014 views

Is there any text mode for filtering for a custom form in a template report if your users are using multiple custom forms?

In a project report, it would be this:

objectCategoriesMM:ID=xxxxxxxxxxxxxxxxxxxxxxxxxxxxx

objectCategoriesMM:ID_Mod=in

(i.e. filter on Categories ID)

In a template report there's nothing. I did try copying over the code in the valuefield on the view (I think it's customFormsName), as well as the textmode from the project report. But everything errors out. So can I really only filter off the primary custom form in a template report (i.e. filter on Category ID)?

14 replies

Doug_Den_Hoed__AtAppStore
New Participant
September 25, 2019

To retrieve all templates that have a particular custom form's guid attached, simply switch your Template report's filter to text mode and use this one-liner:

  • objectCategories:categoryID=41b3dac47210ff4da13ea1c3748ab204

And yes, if you're wondering: it was much harder to figure out than it looks.

Regards,

Doug

SkyeHaAuthor
New Participant
September 24, 2019
I'm going to table this for now (haha). I couldn't get the exists statement to work, which kind of makes sense. (My understanding is that the OBJCAT listing would have to show in the references tab for me to be able to link to it--is that right? and it doesn't so I can't) I did flail around a little with different syntaxes, but no joy. -skye
SkyeHaAuthor
New Participant
September 24, 2019
thanks Barry. I was fortunate that there was already an existing reference for the view part of the report--however because there was that, I didn't even think about using an exists filter. :) I should have known. Thanks so much! -skye
New Participant
September 24, 2019

Usually, when something (like a template) can have multiples of something else (like a form), the form is a collection of the template. Workfront has the somewhat mysterious objectCategory as the collection of the template, and the categories are a reference of the objectCategory. I suspect this is where you are having trouble.

Listing a collection, and even a reference of a collection, can be done in text mode by adding a column. To just list all the forms in a tempalte, add a column in text mode to say:

displayname=Custom Forms

listdelimiter=<br>

listmethod=nested(objectCategories).lists

textmode=true

type=iterate

valuefield=category.name

valueformat=HTML

Because it's a reference in a collection and not a direct property of the collection, we can't just filter on the collection. So instead we have to use the text mode EXISTS functionality to link between templates and categories, via objectCategories as the linking object.

So the text mode for the filter will be:

EXISTS:A:$$OBJCODE=CTGY

EXISTS:A:category:ID=[replace with ID of the form (category) you are looking for]

EXISTS:A:ID=FIELD:categoryID