Dynamics CRM 2011: CommandProperties crmparameter nicht korrekt eingestellt, wenn er an die Flyoutanchor JavaScript -Funktion übergeben wird

StackOverflow https://stackoverflow.com/questions/9325718

Frage

Ich versuche, drei dynamisch gefüllte Flyoutanchor -Ribbon -Tasten zu erstellen, basierend auf der folgenden Antwort: Fügen Sie das Dropdown -Menü zum CRM 2011 Ribbon hinzu

Alle drei Flyoutanchor -Tasten verwenden dasselbe PopulateQueryCommand. Die JavaScript -Funktion, die mit dem Befehl verknüpft ist (siehe Code -Block unten) Befehlsproperties CRMParameter wurde als erstes Argument bestanden, um die Klick -Schaltfläche Flyout zu identifizieren (und sollte mit dynamisch hinzugefügten Dropdown -Menüelementen gefüllt werden).

function DynamicMenu(CommandProperties) {
    /// <summary>Dynamically generate menu items based on context</summary>
    /// <param name="CommandProperties">
    ///    Command properties crm parameter sent from the ribbon.  object used to inject the Menu XML
    /// </param>

    debugger;

    var menuXml = '<Menu Id=\"Sample.DynamicMenu\">' +
                       // ... Other menu XML stuff goes here
                  '</Menu>';

    CommandProperties.PopulationXML = menuXml;  // error here...PopulationXML is undefined... :-(

    // ...
}

Die Funktion wird gut aufgerufen und das Argument "CommandProperties" wird übergeben (es ist nicht null und nicht undefined), aber wenn ich versuche, die Populationxml festzulegen, bekomme ich einen Fehler, da diese Eigenschaft ist undefined. Die anderen drei erwarteten Eigenschaften, die unten aufgeführt sind undefined:

  • SourceControlid: Der ID -Wert der Bandsteuerung, die das Ereignis initiierte.
  • CommandValueid: Eine Zeichenfolge, die mit dem Befehlsereignis gesendet wird, wenn eine Schaltfläche geklickt wird.
  • Menuitemid: Eine Referenz von einer Steuerung auf die ID eines Menüelements.

Wenn ich zum Beispiel in einem zweiten CRMParameter bestehe PrimaryEntityTypename, Dieses Argument ist korrekt gefüllt / festgelegt.

Was könnte die Ursache des durcheinandergebrachten CommandProperties Streit?

Update 21-2-2012: Um vollständig zu sein, habe ich auch den Einzelknopfansatz ausprobiert, wie beispielsweise in beschriebenen in Fügen Sie das Dropdown -Menü zum CRM 2011 Ribbon hinzu, aber das gab mir das gleiche Ergebnis (kein nutzbares Befehlsproperties -Objekt). Auf meinem CRM -Server wird Rollup 6 ausgeführt, vielleicht hat das etwas damit zu tun? Gibt es eine andere Möglichkeit, diese Art von Flyout -Ribbon -Menü zu erhalten? Vielleicht etwas in reinem JavaScript? Es sollte auch im Outlook CRM -Kunden funktionieren ...

War es hilfreich?

Lösung

Ich war vor dem gleichen Problem konfrontiert, die Lösung ist anstatt zu verwenden 'u003CMenu Id="Sample.DynamicMenu"> ', verwenden 'u003CMenu Id="Sample.DynamicMenu"> 'Der Unterschied besteht darin, kein Fluchtcharakter für zu verwenden "

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top