none
ISV-Buttons gezielt nur im Entwurfs-Modus? RRS feed

  • Frage

  • Hallo,

    ich hatte diese Frage bereits im Kontext eines anderen Threads gestellt. Dort scheint sie aber untergegangen zu sein...?!

    >>Ist es möglich ISV-Buttons gezielt nur im Entwurfs oder Aktiv Modus anzuzeigen?

    Hier ging es speziell um die Quote Entität. Im Detail, ich möchte im Quote einen (ISV) Button nur beim Statusgrund "Entwurf" anzeigen und bei Statusgrund "Aktiv" einen anderen Button anbieten.

    Grüße & Dank
    Bernd H.

    Donnerstag, 20. Mai 2010 12:08

Antworten

  • Du kannst im OnLoad-Ereignis den aktuellen Status abfragen, sofern dieses Feld im Formular angezeigt wird und dann den entsprechenden Button per JScript ausblenden. Über den HTML-Code der Seite kommst du normalerweise schnell an den entsprechenden Button heran.
    Jürgen Beck

    Dipl. Kfm./Wirtschaftsinformatik
    MVP, MCSD.NET, MCITP DBA, MCDBA, MCSE
    Microsoft Certified Business Management Solutions Professional
    Microsoft Certified CRM Developer
    Microsoft Certified Trainer

    ComBeck IT Services & Business Solutions
    Microsoft Gold Certified Partner
    Microsoft Small Business Specialist

    Developing & Supporting Business Applications from small business to big enterprises covering scores of sectors

    http://www.combeck.de
    • Als Antwort vorgeschlagen JuergenBeckModerator Donnerstag, 20. Mai 2010 13:19
    • Als Antwort markiert BerneyH Donnerstag, 20. Mai 2010 13:22
    Donnerstag, 20. Mai 2010 13:19
    Moderator
  • Hallo Jürgen,

    die Idee war der richtige Hinweis, funktioniert aber nicht so ganz einfach...

    Aus wirgend einem Grund erstellt CRM 4.0 die ISV Buttons mit ständig anderen IDs! Einmal ist es "ISV_New_27_newButton", beim nächsten Load ist die ID des Buttons "ISV_New_33_newButton".

    Dann habe ich aber folgenden Lösung gefunden:

    var tag = document.getElementsByTagName("LI")
    for(x = 0; x < tag.length; x++)
    {
    if(tag[x].getAttribute("title") == "newButton")
     {
     button = document.getElementById(tag[x].getAttribute("id"));
     if(button != null)
     button.style.display = "none";
     x = tag.length;
     }
    }

     

    _____
    Quelle: JScript :: Hide ISV.config buttons von Tyler Sand

    Donnerstag, 20. Mai 2010 14:23

Alle Antworten

  • Du kannst im OnLoad-Ereignis den aktuellen Status abfragen, sofern dieses Feld im Formular angezeigt wird und dann den entsprechenden Button per JScript ausblenden. Über den HTML-Code der Seite kommst du normalerweise schnell an den entsprechenden Button heran.
    Jürgen Beck

    Dipl. Kfm./Wirtschaftsinformatik
    MVP, MCSD.NET, MCITP DBA, MCDBA, MCSE
    Microsoft Certified Business Management Solutions Professional
    Microsoft Certified CRM Developer
    Microsoft Certified Trainer

    ComBeck IT Services & Business Solutions
    Microsoft Gold Certified Partner
    Microsoft Small Business Specialist

    Developing & Supporting Business Applications from small business to big enterprises covering scores of sectors

    http://www.combeck.de
    • Als Antwort vorgeschlagen JuergenBeckModerator Donnerstag, 20. Mai 2010 13:19
    • Als Antwort markiert BerneyH Donnerstag, 20. Mai 2010 13:22
    Donnerstag, 20. Mai 2010 13:19
    Moderator
  • Hallo Jürgen,

    die Idee war der richtige Hinweis, funktioniert aber nicht so ganz einfach...

    Aus wirgend einem Grund erstellt CRM 4.0 die ISV Buttons mit ständig anderen IDs! Einmal ist es "ISV_New_27_newButton", beim nächsten Load ist die ID des Buttons "ISV_New_33_newButton".

    Dann habe ich aber folgenden Lösung gefunden:

    var tag = document.getElementsByTagName("LI")
    for(x = 0; x < tag.length; x++)
    {
    if(tag[x].getAttribute("title") == "newButton")
     {
     button = document.getElementById(tag[x].getAttribute("id"));
     if(button != null)
     button.style.display = "none";
     x = tag.length;
     }
    }

     

    _____
    Quelle: JScript :: Hide ISV.config buttons von Tyler Sand

    Donnerstag, 20. Mai 2010 14:23
  • Danke für das Skriptbeispiel und die Referenz!
    Jürgen Beck

    Dipl. Kfm./Wirtschaftsinformatik
    MVP, MCSD.NET, MCITP DBA, MCDBA, MCSE
    Microsoft Certified Business Management Solutions Professional
    Microsoft Certified CRM Developer
    Microsoft Certified Trainer

    ComBeck IT Services & Business Solutions
    Microsoft Gold Certified Partner
    Microsoft Small Business Specialist

    Developing & Supporting Business Applications from small business to big enterprises covering scores of sectors

    http://www.combeck.de
    Donnerstag, 20. Mai 2010 15:40
    Moderator
  • hmm,
    jetzt wirds blöd!

    Wenn mann ein geöffnetes Formular, d.h. das Fenster, dann "resized", wird der Button aber wieder angezeigt!

    Ich befürchte, dass man hier mit einfach Mitteln nichts mehr machen kann...

    Mittwoch, 26. Mai 2010 09:56
  • Hi,

    du musst auf das Event 'onresize' des Fensters reagieren. Siehe z.B. http://mscrm4ever.blogspot.com/2008/08/show-hide-crm-form-toolbar-buttons.html

    • Als Antwort vorgeschlagen ckeller Freitag, 28. Mai 2010 19:11
    Mittwoch, 26. Mai 2010 10:15
  • Stimmt ja, beim onsize wird auf die Größe des Formulars geachtet und dann ggflls. der Text bei den Buttons eingeblendet.


    Jürgen Beck

    Dipl. Kfm./Wirtschaftsinformatik
    MVP, MCSD.NET, MCITP DBA, MCDBA, MCSE
    Microsoft Certified Business Management Solutions Professional
    Microsoft Certified CRM Developer
    Microsoft Certified Trainer

    ComBeck IT Services & Business Solutions
    Microsoft Gold Certified Partner
    Microsoft Small Business Specialist

    Developing & Supporting Business Applications from small business to big enterprises covering scores of sectors

    http://www.combeck.de
    Mittwoch, 26. Mai 2010 11:17
    Moderator
  • super Tipp!

    So Funktioniert das auch nach einem Window Resize!

    var OnResizeHideOrderButtons = function()
    {
     var tag = document.getElementsByTagName("LI")
     for(x = 0; x < tag.length; x++)
     {
      if(tag[x].getAttribute("title") == "newButton")
      {
       button = document.getElementById(tag[x].getAttribute("id"));
       if(button != null)
       button.style.display = "none";
       x = tag.length;
       }
     }
    }
    window.onresize = OnResizeHideOrderButtons;
    OnResizeHideOrderButtons();
    

    Danke CKeller!

     

     

    Mittwoch, 26. Mai 2010 11:46
  • Du kannst dir auch im OnLoad den auszublendenden Button in einer Variable referenzieren und diese Variable für das Ausblenden verwenden. Dann brauchst du nicht bei jedem onresize nach dem Button zu suchen, was ja durchaus je nach Rechner und Installation die Prozessorlast nach oben jagen kann.
    Jürgen Beck

    Dipl. Kfm./Wirtschaftsinformatik
    MVP, MCSD.NET, MCITP DBA, MCDBA, MCSE
    Microsoft Certified Business Management Solutions Professional
    Microsoft Certified CRM Developer
    Microsoft Certified Trainer

    ComBeck IT Services & Business Solutions
    Microsoft Gold Certified Partner
    Microsoft Small Business Specialist

    Developing & Supporting Business Applications from small business to big enterprises covering scores of sectors

    http://www.combeck.de
    Mittwoch, 26. Mai 2010 11:57
    Moderator