Hi,
Try the following instead:
EXISTS:a:$$EXISTSMOD=NOTEXISTS
EXISTS:a:$$OBJCODE=PROJ
EXISTS:a:name=planogram
EXISTS:a:name_Mod=cicontains
EXISTS:a:programID=FIELD:ID
EXISTS filters are the most complicated when it comes to text mode in my opinion, but i'll attempt to explain.
EXISTS:a:$$EXISTSMOD=NOTEXISTS - This specifies the exists modifer we want to apply. In your example we are looking for programs that contain projects where the word "planogram" does not exist in the project name. So we use a "NOT EXISTS" modifier, if we wanted to look for programs with projects that do have "planogram" in the name, we would use "EXISTS" instead.
EXISTS:a:$$OBJCODE=PROJ - This tells Workfront what type of object we are checking for the existance of. In your example, we are checking for projects.
EXISTS:a:programID=FIELD:ID - Since we are building a program report that can't access project fields without text mode, we have to instruct Workfront how to link the projects to the programs they belong to so that they can be reported on. This piece of code is stating that the "programID" of a project should match the "ID" of a program.
EXISTS:a:name=planogram - This tells Workfront to filter your report based on Projects having "planogram" in the project name
EXISTS:a:name_Mod=cicontains - This tells Workfront to filter based on the project name containing a case insensitive value
When we put all of this together, the text mode is telling Workfront to display all programs where projects containing case insensitive "planogram" in the name do not exist.
Hopefully that makes sense and is helpful! You can read more on EXISTS filters here.
Best Regards,
Rich.