Project Server 2013: customize JSGrid (Project Center, MyTasks, etc...) ?

Hi,
In Project Server 2010, it was possible to customize the JSGrid, thanks to the tutorial included in the SDK "Walkthrough:
Customizing the PWA Ribbon and Accessing the JS Grid". It works really fine, and I used this possibility in many Project Server 2010 implementation for Customer.
I would like to make it on Project Server 2013, but the same code doesn't work. I found some posts
here, where people had the same issue, but no clear answer.  
The Project Server 2013 SDK does not contain the same tuto upgraded for 2013, and I hope that this possibility still exists.
If somebody has a very basic example to show how to execute some custom code on Focus Change event, or clic, or what ever event happening on this JSGrid, it would be very nice to share.
My installation is On Premise, not in On Line.
Thank you for your help !
Sylvain

Hi,
In fact for filtering, you have to use delegate.
The "HandleFilter" function must be created by you. You have to bind this function to the correct delegate. 
For filtering, the main delegates are:
SP.JsGrid.DelegateType.AutoFilter
SP.JsGrid.DelegateType.LaunchFilterDialog
SP.JsGrid.DelegateType.GetAutoFilterEntries
The post
here explains the process for 2010. For Project Server 2013, the difference is that we don't have the same objects.
Here you can find the way to declare the delegate in Project Server 2013, with the SetDelegate method:
var pc; // Contains the Project Center extension object.
var JsGridControlInstance;
var JsGridSatellite;
_spBodyOnLoadFunctionNames.push("ProjectCenterMain");
function ProjectCenterMain() {
pc = new ProjectCenterExtension();
function ProjectCenterExtension() {
if (typeof projectCenterComponent === 'undefined')
return;
JsGridSatellite = projectCenterComponent.get_GridSatellite();
JsGridControlInstance = projectCenterComponent.get_GridSatellite().GetJsGridControlInstance();
JsGridSatellite.get_tableViewParameters().bAutoFilterableColumns = true;
JsGridControlInstance.SetDelegate(SP.JsGrid.DelegateType.AutoFilter, HandleFilter);
JsGridControlInstance.SetDelegate(SP.JsGrid.DelegateType.LaunchFilterDialog, FilterDialog);
JsGridControlInstance.SetDelegate(SP.JsGrid.DelegateType.GetAutoFilterEntries, FilterMenu);
function HandleFilter(newState) {
alert("Filter !");
function FilterDialog(param) {
alert("FilterDialog !");
function FilterMenu(param) {
alert("FilterMenu !");
My advice to search, is to put a break point on the ProjectCenterExtension function, and through debugger, tou can drill down in the main methods and properties. 
Often you will see functions with get_XYZ(), and then be able to make the matching with the Project Server 2010 syntax.
For the filtering implementation, I beleive that you can deal with your article based on 2010: it should work as soon as you will get the equivalent objects in 2013.
Hope it helps !
Sylvain

Similar Messages

  • Project Server 2013 Ribbon Customization using a custom action

    Is it possible to customize the ribbon in the Project Center through a Solution? Is the only way to add a button to the Ribbon through an app?
    I am using Project Server 2013 on Prem and every time I deploy a custom action - button to the ribbon in the Project Center the button becomes greyed out/disabled and says "This control is currently disabled." I haven't been able to find any examples
    of how to do this in Project Server 2013 using a solution.
    Here is the custom action, I have tried with and without the EnableScript attribute but nothing seems to work:
    <?xml version="1.0" encoding="utf-8"?>
    <Elements xmlns="http://schemas.microsoft.com/sharepoint/">
    <CustomAction Id="Ribbon.Library.Actions.AddAButton"
    Location="CommandUI.Ribbon">
    <CommandUIExtension>
    <CommandUIDefinitions>
    <CommandUIDefinition
    Location="Ribbon.ContextualTabs.ProjectCenter.Home.Editing.Controls._children">
    <Button
    Id="Ribbon.Library.Share.NewRibbonButton"
    Command="NewRibbonButtonCommand"
    Image16by16="http://s10.postimage.org/lhar0oijp/U16.png"
    Image32by32="http://s17.postimage.org/trf3y2ui3/U32.png"
    LabelText="UniqueId"
    ToolTipTitle="UniqueId Displayer"
    ToolTipDescription="Displays UniqueId for the list item."
    TemplateAlias="o2" />
    </CommandUIDefinition>
    </CommandUIDefinitions>
    <CommandUIHandlers>
    <CommandUIHandler
    EnabledScript="javascript: function ReturnTrue() { return true; } ReturnTrue();"
    Command="NewRibbonButtonCommand"
    CommandAction="javascript:alert('Hello, world');" />
    </CommandUIHandlers>
    </CommandUIExtension>
    </CustomAction>
    </Elements>

    Hello,
    You can add a new button using a SharePoint feature or via an app. If you haven't see the links below already, take a look. These are for 2010 but would be very similar for 2013:
    http://msdn.microsoft.com/en-us/library/office/gg549101(v=office.14).aspx
    http://msdn.microsoft.com/en-us/library/office/ff535984(v=office.14).aspx
    http://blogs.msdn.com/b/project_programmability/archive/2011/04/08/trials-and-tribulations-in-customizing-the-project-center-ribbon.aspx
    http://epmsource.com/2012/01/26/adding-print-capabilities-to-project-detail-pages/
    http://epmsource.com/2011/12/07/hiding-disabling-ribbon-items-in-project-server-part-i/
    http://epmsource.com/2011/12/13/hiding-disabling-ribbon-items-in-project-server-part-ii/
    http://msdn.microsoft.com/en-us/library/office/jj873844(v=office.15).aspx#pj15_StatusingApp_ribbon
    Follow
    some of those example to get those buttons working / hiding then modify your code.
    Paul
    Paul Mather | Twitter |
    http://pwmather.wordpress.com | CPS

  • I'm an admin of this site, but now can't access some pages in Project Server 2013 e.g. Project center, PWA setting

    I'm an admin of this site, but now can't access some pages in Project Server 2013 e.g. Project center, PWA setting

    it may be your browser.  CHeck the folloinwg
    1) Turn on Compatibilty mode
    2) Security Options / Make it a local trusted site
    3) Turn of Protected Mode in the browser under Security
    and have you tried it from Chrome
    CHeers!
    Michael Wharton, MVP, MBA, PMP, MCT, MCTS, MCSD, MCSE+I, MCDBA
    Website http://www.WhartonComputer.com
    Blog http://MyProjectExpert.com contains my field notes and SQL queries

  • Project Server 2013: I am using Project Server Permission Mode and need help with permission assignments?

    Hi 
    Project Server 2013: I am using Project Server Permission Mode and need help with permission assignments?
    How can I change Permissions for the individual users to see specific projects or all projects in project center and to see specific quick launch items?
    For Example: if i have 4 users, A, B, C and D. what i want is:
    User A can see everything and act as a project manager or Admin.
    User B can view all projects in project centre but can change the schedule or resource assignment etc.
    User C can only act as approver of projects and can view all projects in project centre.
    User D can only view specific projects for which permissions are given.
    can i have some expert help in sorting and understanding permission modes... as i was playing with project server mode permissions and can't figure out how to apply the above scenario to set of my user.
    Thanks in Advance
    Cheers
    AJ
    Ajay Kumar

    Hi Ajay,
    Please refer to this link for detailed explanations about PS2013 security model. 
    http://technet.microsoft.com/en-us/library/cc197638(v=office.15).aspx
    Actually, it will take a couple of days to explain in detail the security model that is a fundamental and tricky aspect of every PS implementation. But basically, you NEVER set permissions for a single user. You have groups in which your insert users. Groups
    define "what users can do". Then you associate groups to a corresponding category. Categories define "what user can see". Thus the association of a group with a category will set "what the user can do on the objects he can see". Then, for more advanced security
    level, you can use the RBS that will consist in "branches" in which you'll insert users. Based on those branches, you'll customize categories to fine-tune what user can see (for projects and resources) depending on the RBS branch and level.
    I'd advice you to start "playing" in a test environment with the default categories/groups that might probably cover your need.
    Concerning your 4 users:
    user A : add him to the "administrator" group. Be careful that you're mentionning either project manager or administrator, which are 2 groups/categories with totally different permissions level.
    user B : basically can see everything and change everything? it could be in the project manager group, assuming that there are no project visibility restrictions on the category via the RBS.
    user C : waht do you mean by "approver"? Workflow approvals? Then it will be the portfolio manager group. Task update or timesheet approval? Then it is another long topic: please refer in the documentation to the "status manager" and "timesheet manager"
    concepts. There are not related to the security model. In a few words, the status manager is the owner of the project plan, is defined for each task and approves tasks updates. The timesheet manager is an attribute defined for each resource in its parameters
    and approves resource timesheet.
    user D : you have to define which permission level must be given to this user. Basically it could be a team member that will see only projects he's in the project team. Note that team member cannot interact with the project plan in another way than submitting
    timesheets and/or tasks updates which must be approved.
    Once more, those are large and complex subjects that require a deep dive into your business model and tons of tests in a test environment.
    Hope this helps.
    Guillaume Rouyre - MBA, MCP, MCTS

  • Can new PWA views be created whereby a filter can be set and associate to the view by default? (Project Server 2013 ONLINE)

    My main question is: Can new PWA views be created whereby a filter for that view can be set, and associate to the view by default? (Project Server 2013 ONLINE)? and can I have a filter set to filter on person logged on to...
    In previous versions of Project Server, when CREATING a PWA view, we were able to apply/ define a filter for that view.  Does not seem like it is the case in Project Server 2013 Online.  And if I remember, we could also use the URL Guid_view_id. 
    Please confirm; and / or tell me how-to.
    What I was hoping to do is the following... Given that our standard that we have adopted for reporting time is 'My Timesheets' (fyi, Single Mode Entry=ON), we have some resources who have others who do it on their behalf via 'My Tasks' (ie., accomplished
    by using the 'Assignment Owner' field, accordingly).  Therefore, when entering time on someone else's behalf within 'My Tasks', we like to present the user that is logged in only the tasks that they are are assigned to update on others' behlaf.
    I know that there is another more elegant approach to doing this which may be to use the Delegation feature. But since we are trying to stick to Sharepoint Security mode for now, this is not an option for the time being.
    Any help appreciated would be greatly appreciated.
    \Spiro Theopoulos PMP, MCITP. Montreal, QC (Canada)

    Hi Spiro,
    1- You still can define in Project Online a filter in the view settings, it is located just above the category setting. Here is a screenshot of the summary project center view:
    2- The view GUID is not anymore in the URL, since the URL triggers an action only on the webpart and not on the whole page. I agree this is annoying since it was great to send a URL with a specific view.
    3- Concerning the access to my timesheet versus my task, I'm not sure to get a full understanding but on a general way, it is much more easy to deal with those situation using categories which you cannot do with the SP permission mode.
    Hope this helps,
    Guillaume Rouyre, MBA, MVP, P-Seller |

  • How to get timesheet information in a javascript (Project Server 2013)

    Hi all,
    In Project Server 2013, I'm trying to customize the Timesheet ribbon. This far, I've been able to add a new button and tie an event to it. All is working well. This is all done using elements.xml and a javascripts.
    Now the problem is that I want to get some informations about the timesheet (the Guid for example) and, for now, I've got no success. I know that there is an object called PS.TimeSheet, but when I try to use some PS.TimeSheet's methods I get an error.
    Note that i'm in the page http://servername/pwa/timesheet.aspx (there is not Guid in the address) and all the treatments should be done in the javascript (no call to another aspx page)
    Thanks !

    Finally, I've found the solution.
    My goal was to add a button in the timesheet ribbon to launch a special report showing some data about the timesheet. The report has the timesheet Guid as parameter.
    To customize the Sharepoint ribbon, you have to do it via an xml file and a javascript (a lot of explanation is available in the internet that explains how to do it). So I had to call a function in the javascript to launch the report (which is a SSRS report).
    When you are in a javascript you have access to many global variables. When the timesheet.aspx is displayed, there is a global variable called "timesheetComponent".
    Using this variable we can call the method :
    timesheetComponent.m_consumedApi.get_Impl()
    to get an implementation of the current timesheet. This implementation has an attibute that has a lot of nice stuff about the current user and the current time sheet. This attribute is 
    _headerInfo
    _headerInfo is a structure that includes tsUid which contains the timesheet Guid I was looking for.
    Finally, the function attached to the button goes like this :
    function _LaunchReport() {
    var tsUId;
    var rptPath;
    var tsImpl = timesheetComponent.m_consumedApi.get_Impl();
    try
    if (CONST_REPORT_PATH == null || CONST_REPORT_PATH == "" ) {
    alert("Constant CONST_REPORT_PATH is not defined")
    else {
    tsUId = tsImpl._headerInfo.tsUid;
    rptPath = CONST_REPORT_PATH + 'TimesheetDetails&rs:Command=Render&rc:Parameters=false&TimesheetUID=' + tsUId;
    window.open(rptPath);
    catch (Err) {
    alert(Err)
    CONST_REPORT_PATH is the path to SSRS defined elsewhere
    I hope this will help some other poeple !

  • Project Server 2013 - External Data Refresh Failed

    Hi, 
    I have built  new Project Server 2013 in a 3 tier farm, with OWA, configured PWA site everything working fine except, Reports in BI Center, where i am getting - External Data Refresh Failed error
    http://Sp2013/PWA/ProjectBICenter/Sample%20Reports/Forms/AllItems.aspx
    i have stopped using Excel Web also to use Excel Services, get below error
    External Data Refresh Failed
    An error occurred while accessing application id ProjectServerApplication from Secure Store Service. The following connections failed to refresh:
    Project Server - Issue Data
    Project Server - Risk Data
    Learn
    more about data refresh
    Steps Tried:
    1.deleted Excel Services - recreated
    2.Deleted Secure store - recreated
    Built  test box without OWA still have the same issue
    Any suggestions/ Solutions greatly appreciated.
    Thanks 
    Aleem
    Alim

    Hi,
    If you are still facing the same issue follow the below steps:
    1) Access PWA from your server
    2) Download any built in report from Reports section (in your case
    Project Server - Issue Data Project
    Server - Risk Data) to your server.
    3) Open report in excel, go to Data->Connections in Workbook Connection dialog open "Project Server - Issue Data" go to properties.
    4) Here select tab 'Definition' under connection file remove tick for 'Always use connection file'
    5) Tweak your connection string & tick save password option 
    6) Excel Services: Authentication Settings (suit yourself)
    Now, save & publish on PWA, hope it works :)

  • Project server 2013----new custom field value is not synced between my work assignment view and project professional

    Hi All,
    I would like to add a new custom enterprise field in project server to caculate the effective work. I hope it can work as the default field "work" and "overtime work". And I add my custome enterprise field to my work assignment and the
    related details view. User can update the values in "my task" but after PM accept the updates, these values are not synced to the project center as well as project professional. Any idea?
    Regards,
    Anna

    Yes, I am saying that the PM cannot see the updated values in the enterprise project in Microsoft Project 2013. It is a task custom field. No errors for it. Would you please help create a task custom field on your side to see whether you can reproduce
    this issue? After creating the field, please add it to the "My task" related views so that project members can update the value for the task when they update the task information under "my tasK" page. After that, open the project plan as
    project manager to see whether you get the updated value. Thanks a lot!
    Regards,
    Anna

  • BI Templates Missing in this Project Server 2013 On-Line Installation

    Hi,
    In a Project Server 2013 On-Line install over here, I do not see any language packs or templates within the Business Intelligence Center (PWA 2013 On-Line > Reports > Site Contents > Templates)?  There are no files in this directory whatsoever!
    Yet in PWA > Reports, I see language packs (e.g., English (United States)), whereby the 3 standard sample reports can be found, ie., Project Overview Dashboard, Project Overview, and Resource Overview.  Same thing in PWA > Data Connections, I
    see language packs (e.g., English (United States)), see these 6 ODC files: OData Assignments Data, OData Issues Data, OData Projects Data, OData Resources Data, OData Risks Data, and OData Tasks Data.
    Why would this be?  Are templates not include in the On-Line version?  If the on-line version is supposed to come with templates, how do I install them at this point?  I imagine there should be 7 or so files in there: i.e., ProjectAndAssignments,
    ProjectAndTasks, Issues, Risks, Timesheet, DependentProjects, Issues, Resources.
    Thanks in advance,
    \Spiro Theopoulos PMP, MCITP. Montreal, QC (Canada)

    Hello,
    In all Project Online tenants / PWA instances I have used the Templates folder is always empty.
    Paul
    Paul Mather | Twitter |
    http://pwmather.wordpress.com | CPS |
    MVP | Downloads

  • Custom Column for Project Code Number & Search Box to search Content in Project Server 2013

    Hi all,
    I want to add a custom column in Project Center view for showing some Numerical Projects codes like 4523, 5248,8956 like that... Each code will represent Project assigned with that code in Project Server 2013. Also let me now if i can add some search box
    in Project Center page through which i can search Project Code or Project Name. Currently, provided search bar not working in Project Server 2013.
    Need it urgent..Kindly help

    Hi,
    If you want to add this column in a project center view, be careful to choose a project view in the "manage views" views' list. Also it must be a project custom field and not a task field. As Paul said, we assume that the field with the code exists
    and has been previousky created by you.
    Hope this helps,
    Guillaume Rouyre, MBA, MVP, MCP |

  • Project Server 2013 - "An unknown error has occured"

    Hi !
    Whenever I navigate to Project Center in Project Server 2013 the credentials window pops-up continuously even after entering correct admin account and after several clicks on OK button in credential window it says "An unknown error has occurred".
    This is happening at every links. Even at Resources, Tasks, Reports, etc.. Is this Project Server 2013 stable or still has bugs in it.
    I recently installed March 2013 hotfix for Project Server but still no luck. In ULS or Event Viewer I didn't got any
    relevant exceptions.
    I am even unable to connect to Project Server from Project Professional.
    Thanks & Regards.

    "An unknown error has occurred" usually means that the browser cannot resolve some data or something is missing. This can be caused by many issues. One for instance is deleting projects, but timesheets are still referencing it. Many others.   This
    is one of the harder issues to resolve, because often you don't find anything in the ULS.
    Seeing that this error is occurring everywhere on PWA, I would first try rerunning the "SharePoint Product Configuration Wizard".  If this fails at any place, that will be the first thing to fix.
    Cheers
    Michael Wharton, MVP, MBA, PMP, MCT, MCTS, MCSD, MCSE+I, MCDBA
    Website http://www.WhartonComputer.com
    Blog http://MyProjectExpert.com contains my field notes and SQL queries

  • Creating custom Category for Risk & Issue in Project Server 2013

    Dear All,
    How to Change Risk & Issue Category default as per business requirement when selecting them through drop down or radio button?
    I can do only Project wise from project site & then setting changes. But i want to customize it for all projects which are getting published in Project Server 2013. So doing manually every time project wise not making sense & consuming time also.
    Kindly help..

    I have created custom template but not getting as demonstrated in  blog
    post from Prasanna  specially
    end part where Risk, Issue n all content can be seen. In My case only simple 3-4 items can be seen apart from risk, issue etc.
    After that i saved this custom template to my
    one of EPT in Project Server 2013. But unable to customize my Risk & Issue Category options for all projects. However, i have gone through that post & unable to understand as described in 2010 & i am using 2013 version.
    Kindly let me know after saving custom Template
    to EPT how to move further to customize these risk & issue categories globally.!!

  • Project Server 2013 - OLAP Cube Build Issues

    Hi,
    I have a Project Server 2013 environment with SQL Server 2012 SP1. My cube built successfully and Report Authors group (including me) were accessing the templates and Data Connections from BI centre successfully.
    I re-built the cube and suddenly we all cannot access templates or data connection as it says 'Access denied'!
    Went to server hosting Analysis Services and checked the role ProjectServerViewOlapDataRole and didn't see any of the check box ticked for database permissions like it was when I initially built the cube and added Report Authors group and account
    that is used by Secure Store app. Membership has both account and group.
    Has anyone come across this issue?
    Thank you,
    SJ

    SJ,
    The access of the BI Center, templates and data connections are handled by SharePoint permissions and are usually inherited from PWA.
    The ProjectServerViewOlapDataRole simply provides the ability to view the data from the OLAP database. It sounds like the issue isn't with the OLAP but rather with PWA itself. An OLAP error would have only precluded you from retrieving data.
    Did someone modify the BI Center site permissions recently such as breaking inheritance?
    Treb Gatte, Project MVP |
    @tgatte | http://AboutMSProject.com

  • Project Serial Number column in Project Server 2013 (PWA)

    Hi All,
    Whenever any new projects are created on Project Server 2013, they are arranged automatically by Alphabetical order. So i would like to know or need support through which i can create serial number column in Project Center so that projects are aligned. as
    per numbers.
    Kindly help..

    Hi,
    It is actually 2 questions. 
    First you want to create a unique ID for projects? Here is an excellent
    blog about this subject.
    Then you want to sort projects along a number? It could be a custom number field or the unique ID above. You just have to go to the server settings, manage views and go to the "sort by" section and select your number field.
    Note that the field used to sort the project center view must be in the view to be used as a sorting criteria.
    Hope this helps,
    Guillaume Rouyre, MBA, MVP, P-Seller |

  • I've used Project Web App on Sharepoint 2013. After clear job queue about force check-in then I've got this error. This made me can't access some pages in PWA anymore e.g. Project center, Resoure center, PWA setting, etc.

    I've used Project Web App on Sharepoint 2013. After clear job queue about force check-in then I've got this error. This made me can't access some pages in PWA anymore e.g. Project center, Resoure center, PWA setting, etc.  Who have ever found this problem,
    pls. help.
    The pop up error msg. is "Sorry, you don't have access to this page"

    Hi,
    According to your description, after you cleared job queue about force check-in then you can't access some pages in PWA.
    Maybe you need to check in the pages which has been checked out.
    If you have administrative rights, it is possible to override the check-out via the View All Site Content page:
    Site Actions->View All Site Content->Pages->Hover the item you want to check in, and from the context-menu (arrow-down next to the filename), choose "Discard Check Out"
    Besides, to troubleshooting the error “Sorry, you don't have access to this page”, refer to the following articles:
    http://sharepoint.rackspace.com/sharepoint-2013-troubleshooting-an-access-issue-with-a-custom-master-page
    http://technet.microsoft.com/en-us/library/ff758656(v=office.15).aspx
    In addition, as this issue is related to project server, I suggest you create a new thread on project server, more experts will assist you:
    https://social.technet.microsoft.com/Forums/projectserver/en-US/home?category=project
    Best Regards,
    Lisa Chen
    Lisa Chen
    TechNet Community Support

Maybe you are looking for