Recent searches
No recent searches
Enable custom ticket field columns to be added to the request table in Help Center my activities page
Posted May 31, 2014
Hi, I've seen a few people asking for and commenting on the inability to add columns to the request table in the my activities page in the new help center, this would be a great feature as we need to be able to display some of the custom end user visible fields to the users in the request table (since its a summary table). We've had quite a few queries from end users wanting to use this feature. An example of this is that we have a custom field which tracks the product the user is logging a ticket about, it would help the end user to be able to filter by this field. Currently we are now having to alter the subject line of the tickets to include the product name applicable to the ticket which understandably is a real pain.
Please, please??? :)
Thanks, Stash
175
159 comments
Yamile Martinez
Hi Chuck,
Yes please, i am very interested in the Export to Excel; can you share?
Thanks,
Yami
1
Dan Hillesheim
@Chuck Yocum
If you figured out a way to export to excel that would be a great thing. If you're willing to post, please do!
0
Simon
"First one was easy, I just put the code in there."
Seems to be working that way for everyone except me. No idea what I've done wrong.
0
Julien Van de Casteele
Guys let's all vote this one: https://support.zendesk.com/hc/en-us/community/posts/360032045433-My-Activities-Customer-View-Improvements
0
Amie Brennan
Hey friends,
I've been reading through the comments on this post and the script on page 4 looks like what I'm looking for here. The script looks to be allowing a custom field to show (which is awesome) on the my activities page. I'm looking to pull in the org name which is linked to each ticket. Because the org name field doesn't have its own value, as the value belongs to each individual org name, I'm not sure how I can rework this script to pull in the org name instead.
Would anyone else out there perhaps have any ideas on how I could achieve this?
Looking at using this script below which Kenneth posted on page 4 of this post comments.
----------------------------------------------------------
<td class="requests-table-status">
<div id="{{id}}"></div>
<script>
//alert("debugging - do we get here?");
$.ajax({
url: 'https://<CHANGE HERE - Domain>zendesk.com/api/v2/requests/{{id}}.json',
dataType: 'json',
type: 'GET',
crossDomain: true,
contentType: 'application/json',
data: '',
processData: false,
success: function (data)
{
//alert('Debugging - API Success');
var value="none";
var count = Object.keys(data.request.fields).length;
var i;
for (i = 0; i < count ; i++)
{
//alert("DEBUGGING\nID: " + data.request.fields[i].id + "\nValue: "+ data.request.fields[i].value);
if (data.request.fields[i].id==<CHANGE HERE - FIELD ID>)
{
value = data.request.fields[i].value;
break;
}
}
var elm = document.getElementById("{{id}}");
//alert(Debugging - elm);
if (elm != null)
elm.innerHTML = value;
},
Error: function (result) {
}
})
</script>
</td>
-------------------------------------------------
Thanks in advance for your help with this one. :)
Best,
Amie
0
Jason Fouchier
I have been able to pull my custom fields into the table using this method, the only one I am having issues with is the system field of "group". I either get nothing, or it posts none even if I know that the ticket is in a group. Am I having issues because it is a system field?
Thanks,
Jason Fouchier
0
Jason Fouchier
Nevermind, the group and assignee are not available datasets on the requests list page. A little more reading and research on my part would have been useful. I do think that it is pretty ridiculous that these are not available to display on the request list page as this can be important to an end user depending on what type of business you are. We are in a business to business scenario and we would like our end users to be able to see the group and assignee of their ticket. This would really help in the flow of our communication to our partners and allow them to have a better understanding of how a ticket journeys through our system. As this page currently sits, it is a massive headache to show our partners the needed information and really stunts this portals growth potential.
Thanks,
Jason Fouchier
0
Dan Hillesheim
@Jason - Unfortunately, according to ZD, this isn't on the "public" radar and it's not a big enough issue to be addressed at this time. You're right, it is ridiculous that we can't customize this within Zendesk. It should be a standard feature to adjust the view to be what your customers need it to be without investing more time and money in having someone develop a custom solution. We are stuck using it because we already have so much invested in it. I would love to see some action on ZD's part to move on this particular issue.
0
Chuck Yocum
@D Hill.
We are in the same boat. We have been looking for a replacement for Zendesk because of certain things like this. As a software developer myself this seems like a really really easy thing to implement. Our biggest problem is we also have so much time and material invested. Over time I have been moving more and more stuff out of Zendesk so when we make the move I just have to write a new API and everything will hook up. I look forward to the day.
0
Yamile Martinez
Hi,
I totally agree; we ended up changing the code and for us it works great:. In addition, we changed the dates to reflect the Month DD, YYYY HH:MM format.
Code changes are in the requests_page.hbs
<div class="container" style="width: 95%;">
<header class="my-activities-header">
{{breadcrumbs}}
</header>
<nav class="my-activities-nav nav-bordered">
<ul>
<li>{{t 'requests'}}</li>
<li>{{link 'contributions'}}</li>
<li>{{link 'subscriptions'}}</li>
</ul>
</nav>
<nav class="my-activities-sub-nav nav-spaced">
<ul>
{{#each filters}}
<li>
{{#if selected}}
{{name}}
{{else}}
<a href="{{url}}">{{name}}</a>
{{/if}}
</li>
{{/each}}
</ul>
</nav>
{{#form 'requests_filter' class='request-table-toolbar'}}
{{input 'query' id='quick-search' type='search' class='requests-search'}}
<div class="request-table-filters">
{{label 'organization' for='request-organization-select' class='request-filter'}}
{{select 'organization' id='request-organization-select' class='request-filter'}}
{{subscribe}}
{{label 'status' for='request-status-select' class='request-filter'}}
{{select 'status' id='request-status-select' class='request-filter'}}
</div>
{{/form}}
{{#if query}}
<div class="requests-search-info meta-group">
<span>{{t 'requests_search_results_info' count=requests.length query=query}}</span>
</div>
{{else}}
{{#unless requests}}
<p>{{t 'no_requests'}}</p>
{{/unless}}
{{/if}}
<div class="my-activities-table table-responsive">
{{#if requests}}
<table id="request-table" class="table my-activities-table requests-table {{current_filter.identifier}}-requests">
<thead>
<tr>
<th >Flx<br>Priority</th>
<!-- <th style="text-align: center">{{#link 'requests' sort_by='id'}}{{t 'id'}}{{/link}}</th> -->
<th style="text-align: center">{{#link 'requests' sort_by='id'}}ID{{/link}}</th>
<th>{{t 'subject'}}</th>
<th>{{#link 'requests' sort_by='created_at'}}{{t 'created'}}{{/link}}</th>
{{#isnt current_filter.identifier 'my'}}
<th>{{t 'requester'}}</th>
{{/isnt}}
<!-- <th>{{#link 'requests' sort_by='updated_at'}}{{t 'last_activity'}}{{/link}}</th> -->
<th>{{#link 'requests' sort_by='status'}}{{t 'status'}}{{/link}}</th>
<!-- <th>{{t 'priority'}}</th> -->
{{! FLX MOD: add Internal Priority, Type, Environment, Linked Ticket to the table }}
<!-- <th>Flx {{t 'priority'}}</th> -->
<!-- <th>Flx<br>Prio</th> -->
<th>Request<br>Type</th>
<th>Environment</th>
<th>Bugzilla<br>ID</th>
<th>Linked<br>Ticket</th>
<th>Duplicate<br>Ticket</th>
</tr>
</thead>
<script>
// Get request details, injecting custom-fields in Cells of a matching reqID Row
function getCustomFields( reqID ) {
0
Yamile Martinez
1
Jason Fouchier
@Yamile, that looks good. I used something similar for some of my custom fields as well. My current issue is that "group" and "assignee" are not available on the requests list page. This leads me to have to make extra triggers to duplicate data dumped into what is essentially a duplicate field just to be able to bring the needed data into the table for my users to be able to view. It's super frustrating that something like "requester" has a helper available but "group" and "assignee" are not.
0
Jason Fouchier
Hey All,
First off, I wanted to thank all the people who post the questions, answers, tips, and tricks. The information I gathered from the community was like gold and so helpful along the way.
So, after a disappointing and frustrating stretch of trying to customize the requests list page, here is my two cents on the issue.
All I wanted to do was add the group a ticket was with, who it was assigned to, and make the drop-down menus multiselectable. I was disappointed to learn that none of that was available as an available customization and that what was possible needed the duplication of data to custom fields paired with extra API calls, Javascript and a lot of head scratching. Not being able to do simple things listed above without having to make a patched together workaround is simply frustrating.
This is just another disappointing roadblock in the customizability of what could be and should be a great feature to help keep the lines of communication open. It is a touch baffling that you would have such a useful tool in a system that is generally pretty customizable, yet the portal/request list page (which in my opinion should be the most customizable) is devoid of any real/tangible customization. In my particular case, letting the end user see what group and assignee their ticket is with is very important to the direction we are headed as a company in regard to communication with our users. Things like using a templating language to make the code cleaner was a great idea, basing it off a language that is super customizable like handlebars and then stripping away all the customizability is not cool. I understand the statement of "We can't let users run their customized code on our servers", this is a legitimate concern. My argument is that it doesn't have to be one way or the other, you can't tell me that there is not a great compromise in the middle of that void that we can all live with. Now, I know I have just a high-level understanding of all the problems associated with this issue, along with the fact that I am one of the users wanting more options for customization. Not to forget the thousands of hours of meetings discussing the best roadmaps for software and not truly knowing what users are going need or think the need, or how they want to use the product (which may or may not line up with your vision for your own product). I guess I just feel like the compromise would be easier than not having the customizable options. My apologies for the rant, I will step down from my soapbox now 😉.
Thanks,
Jason Fouchier
0
Naga Venkata Satya Narayana
Hi,
I am trying to call custom field in requests_page.hbs file.I added below code in js file but not able to fetch data.
var CustomPriority = $('input#request_custom_fields_360012833834').parent();
CustomPriority.insertAfter($('input#request_Priority').parent());
Can some one help in how to call custom fields in the requests_page.hbs
0
Trapta Singh
Hi @Naga Venkata Satya Narayana,
Can you brief the issue a little more? Like, share the screenshot of the error it is showing to you or what you are trying to do?
Thanks
0
Lohith S
Hi Trapta,
We are trying to add Custom Fields to the My Requests page like Priority(Custom), Issue Type etc with sortability.
Satya tried with the above code from @..., but he is not able to achieve it. Can you guide us where to put this code and how to include the custom fields? Is it through names or field ID ? Because we have 2 Priority fields one standard and one custom. What we need to display is custom Priority values. But how do we include that is the question.
Thanks
Lohith S
0
Lohith S
Hi @..., Any update on this ?
Thanks
Lohith S
0
Lohith S
Hi Team,
Any help on this would be of great help.
Thanks
Lohith S
0
Trapta Singh
Hi @...,
Looks like @... has already responded to @... in his other post. Take a look at it here: https://support.zendesk.com/hc/en-us/community/posts/360037124453-Not-able-to-call-Custom-fields-in-request
Let me know if it helps you.
Thanks
Team Diziana
-1
Eduard Ogay
Just OMG
i look this post and see more 5 years this problem!
we leaved 1 month ago from Zoho because Zoho have not customize field in help center.
And i see here this same problem, what it never will fixed :(
1
Gorka Cardona-Lauridsen
Hi all
We would really like your help to test some UI prototypes for a adding custom field columns and filtering by custom field values in the requests tables.
If you have appetite for this and think you can find an hour here in november to talk to us, please sign up using this form and we will contact you to schedule the call.
We know that this feature request has been here for a very long time, but due to other priorities we have unfortunately not been able to address it sooner.
Thanks in advance, your help is much appreciated!
1
Jason Harlowe
@... -
So far most of this works quite well. I am running into an issue with add the filter drop down you mentioned.
Every time I add the lines you mentioned for the drop down and field columns it breaks the full page. I am guessing I am adding the dropdown and custom field codes in the wrong places?
I do have the script.js in place as well.
My working code for reference:
0
Gorka Cardona-Lauridsen
Hi all
Thanks to all of you that have provided feedback here and those of you that helped us with our UI prototype! It is really valuable.
I'm happy to finally tell you that we have now started development to allow you to show custom fields in the request table and allow users of the table to filter and sort on custom fields. We expect to launch within the next 6 months. I will come with an update on the progress again latest in november.
2
Ahlam Kern
Hello,
I'm having an issue where I can't seem to find an answer to, but I can't imagine it's not possible.
In "My activities" section, the "requests_page" more specifically, I added a column where a date is specified (the last column "created" on the picture).
I put a condition where only certain values will show in the "created" column. The code was working well at this point.
However, the value of the last column can be empty. Other values in other columns are present.
What I want is to hide the entire row if the value of the last column is empty. (I used the ajax part in the code to show the last column with the values I want).
$('#hidetablerows > tbody > tr').has('td:empty').hide() : doesn't seem to work in this case but $("#hidetablerows").find("tr:gt(7)").remove(); shows the first 7 rows...
(hidetablerows is the ID of my table)
0
Alina Maxi
Hi all,
Thanks for the valuable info.
I have been trying all the solutions here, but my code just doesn't seem to work ( the column header appears but it is empty-->no values shown). Also, the closing of the script doesn't seem to be accepted. I am posting the entire body section from requests_page.hbs, maybe you can spot something that I didn't. The domain name was overwritten with cname just for this comment.
Additional info
1. I have tried also using requests vs tickets in the json call, but it didn't help
2. The console also said ''uncaught exception $ is not defined'' next to the $.ajax({
<tbody>
{{#each requests}}
<tr {{#is status 'closed'}} class="request-closed" {{/is}}>
<td class="request-info requests-table-info">
<a href="{{url}}" class="striped-list-title" title="{{subject}}">
{{#if subject}}
{{subject}}
{{else}}
{{excerpt description characters=50}}
{{/if}}
</a>
<!-- Visible on mobile -->
<div class="requests-table-meta meta-group">
<span class="meta-data">#{{id}}</span>
<span class="meta-data">{{date created_at timeago=true}}</span>
<span class="status-label status-label-{{status}}" title="{{status_description}}">
{{status_name}}
</span>
</div>
</td>
<td>#{{id}}</td>
<td>
{{#is ../current_filter.identifier 'my'}}
{{date created_at timeago=true}}
{{else}}
{{requester.name}}
{{/is}}
</td>
<td>{{date updated_at timeago=true}}</td>
<td class="requests-table-status">
<span class="status-label status-label-{{status}}" title="{{status_description}}">
{{status_name}}
</span>
</td>
<td>
<div id="{{id}}"></div>
<script>
//alert("debugging - do we get here?");
$.ajax({
url: 'https://cname.zendesk.com/api/v2/tickets/{{id}}.json',
dataType: 'json',
type: "GET",
crossDomain: true,
contentType: 'application/json',
data: '',
processData: false,
success: function(data)
{
var value = "none";
var count = Object.keys(data.ticket.fields).length;
var i;
for (i = 0; i < count; i++)
{
if (data.request.fields[i].id ==4413431970322)
{
value = data.ticket.fields[i].value;
break;
}
}
var elm = document.getElementById("{{id}}");
alert(Debugging - elm);
if (elm != null)
elm.innerHTML = value;
},
Error: function(result) {
}
})
</script>
</td>
</tr>
{{/each}}
</tbody>
</table>
{{/if}}
</div>
{{pagination}}
</div>
0
Pavlo
Hi @Gorka Cardona-Lauridsen, are there any updates on developments that you've mentioned earlier? Would be great to know the status.
1
Zachary Tarantino-Woolson
Gorka Cardona-Lauridsen
Hello, Any updated on this? 6 months ago you said we would have an update in 6 months.
This would be a great addition to customization.
1
Champ Yarbrough
Any Update? Looks like progress was being made but it has gone dark.
0
Gorka Cardona-Lauridsen
Hi all
We are still working on this feature, but it has taken a bit longer than we hoped for. We are expecting to be able to launch the feature in EAP or Open Beta during Q2 2022. This is as always an estimate based on the current progress and priorities, but should not be seen as a promise.
EDIT: See latest official comment for most recent update.
0
Gorka Cardona-Lauridsen
Hi all, a small update from our side.
We still expect the first phase of this to be available in open beta or EAP in first half of 2022. This is as always an estimate based on the current progress and priorities, but should not be seen as a promise.
We are taking a phased approach to the release so improved sorting and filtering of the currently default exposed fields will be in the phase 1 release and the ability to expose more fields, including custom fields, will come as soon as possible afterwards in a phase 2 release
0