• MS CRM 4.0 Rename or Remove Left Nav Bar Menu Items. Written by: Michael Thompson


     In MS CRM 4.0 have you ever wanted to rename or remove Left Nav links on an entity only to find the OnLoad script fails when trying to use the preview function on the form designer? 

    In many CRM installs companies prefer to not use the Microsoft CRM product catalog so that Write-In Products is really the list of products (on a Quote for example) and Existing Products never has anything listed under it.  Thus they would prefer to eliminate the Existing Products link in the left nav area, and rename "Write In Products" to "Products" or possibly "Line Items."

    The scripts below rename the Write-In Products link and remove the Existing Products link.  They also check to see if the link exists before going through the function, thus preserving the preview functionality of the form designer (if you preview a form without running this check, then the preview will throw and error).  This rename also avoids going to the server to pull icons as many other scripts do.  Note in the rename function a line is repeated twice.  No it is not a mistake, it is needed.  The rename function passes in 3 parameters (navName, Display text, name you want displayed).  You will probably need something like IE Dev toolbar to be able to find the navName.

     

    /* Retext/Rename Left Nav Display links. */

    function leftNavRename(leftNav, oldName, newName)

    {

        var navItem = document.getElementById(leftNav);

        if(navItem  != null)

        {

            navItem.innerHTML = navItem.innerHTML.replace(oldName, newName);

            navItem.innerHTML = navItem.innerHTML.replace(oldName, newName);

        }

    }

    leftNavRename ('navWriteInProducts','Write-In Products','Products');

     

     

    /* Remove Left Nav bar links */

    function leftNavRemove(lNav)

    {

        var lNavItem = document.getElementById(lNav);

        if (lNavItem != null)

        {

            lNavItem.parentNode.style.display ='none';

        }

    }

    leftNavRemove('navExistingProducts');


    Re: MS CRM 4.0 Rename or Remove Left Nav Bar Menu Items.

    Yes you can, most NAV items can have displayed text changed using the function. You must know the ID of the part you wish to change (the reason for the IE Dev Toolbar reference above). Here is how the onload function would look.

    function leftNavRename(leftNav, oldName, newName)
    {
    var navItem = document.getElementById(leftNav);
    if(navItem != null)
    {
    navItem.innerHTML = navItem.innerHTML.replace(oldName, newName);
    navItem.innerHTML = navItem.innerHTML.replace(oldName, newName);
    }
    }
    leftNavRename ('_MIcomplete','Close Opportunity...', 'Complete Opportunity');
  • 相关阅读:
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    win10右键新建markdown文件
    force down pool_member
    自控力差,你可能忽略了一种更底层的能力
    多线程的通信问题
    多线程的安全问题
    Java实现多线程的两种方式
    为什么你成不了数据分析高手?可能是缺少这个思维
    jstack && jmap
    对ElasticSearch主副分片的理解
  • 原文地址:https://www.cnblogs.com/janmson/p/1510294.html
Copyright © 2020-2023  润新知