Dynamics AX 4.0, Form Öffnen ohne Filter Anwendung auf aktuellen Datensatz

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

  •  19-09-2019
  •  | 
  •  

Frage

Ich habe Form mit VendTable Gittern zum Beispiel, die CustAccount Feld hat.

Ich möchte Platz Taste, klicken Sie auf dem CustTable Formular geöffnet, in dem alle Kunden sichtbar sind.

Wenn ich setze CustTable nur menuitem, klicken dann auf sie CustTable Formular wird geöffnet, aber in dieser Form nur ein Datensatz angezeigt wird - eine, die die gleiche AccountNum wie in vendTable.CustAccount hat.

Wie ganze custTable öffnen? Gibt es eine bessere Lösung als Schaltfläche erstellen, und dann Classfactory :: FormRunOnClient zu Darstellungsform verwenden?

PS. Ich brauche Taste, so RMB. -> „Gehen Sie auf die Haupttabelle Form“ zählt nicht

War es hilfreich?

Lösung

Das Problem ist, dass die VendTable Aufzeichnung als Argument an die CustTable Form angewendet wird, die dann eine Dynalink schafft. Die Lösung ist das Argument zu vermeiden.

Überschreiben Sie die clicked Methode im CustTable Display Menüpunkt wie folgt aus:

void clicked()
{
    this.menufunction().run(new Args(element));
}

Dies ruft die CustTable Form mit dem Anrufer Objekt nur und ohne das Protokoll Argument.

Andere Tipps

Ich weiß, dass dies eine ziemlich alte Frage, aber wenn jemand hier kommt die Antwort suchen, rufen Sie einfach Methode clearDynalinks() auf dem Objekt QueryBuildDataSource.

Zum Beispiel haben Sie ein Formular erstellt, und es wird automatisch Filterung Ihre Datenquelle wegen der Dynalinks dass Dynamics erstellt automatisch, lösen Sie es, indem Sie den folgenden Code innerhalb der init() Methode setzen, auf dem Formular Datenquelle:

QueryBuildDatasource qbds;
;


qbds = this.query().dataSourceTable(tablenum(MyTableName));
qbds.clearDynalinks();

// Next line is optional, it clears initial ranges
qbds.clearRanges();

// if you need to add any ranges you can do it right after you clear the initial dynalinks / ranges

Hope es hilft ...

Sie haben 2 Möglichkeiten, können Sie entweder eine Schaltfläche erstellen und seine angeklickt () -Methode außer Kraft setzen, oder verwenden, um eine MenuItemButton und weist einen Aktions MenuItem zu.

MenuItems Verwendung ist eine bewährte Methode, weil es Ihnen erlaubt, die AX Sicherheit & Konfigurations-Framework zu verwenden. Sie können eine Klasse mit dem MenuItem assoziieren und in der Klasse main () -Methode können Sie die FormRunOnClient () Material je nach Bedarf ausgeführt werden.

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