Aku's AX Blog
...feel the spirit of Microsoft Dynamics AX
Tuesday, June 12, 2007
Datensatzvergleiche in Microsoft Dynamics AX
Das man in Microsoft Dynamics AX mittels SYSCompare nicht nur Quellcode oder AOT Objekte, sondern auch Datensätze vergleichen kann zeigt das Tutorial "Tutorial_CompareContextProvider".
Dieses Tutorial veranschaulicht wie man mittels SysCompareContextProvider und SysComparable die Unterschiede herausfindet und darstellt.
Die Darstellung des Datensatzvergleichs ist hier genauso aufgebaut, wie die Darstellung des Quelltextvergleichs.
Ich habe mich mal darangesetzt und versucht diese Funktionalität im gesamten Dynamics AX für jeden Benutzer zu integrieren.
Prinzipiell habe ich mich an dem Tutorial orientiert und es in der Hinsicht verändert, das es nicht nur für die Debitortabelle funktioniert, sondern für jede beliebige Tabelle in jeder beliebigen Maske. Für die Anzeige der Datensätze in der Auswahl, habe ich die Felder TitleField1 und TitleField2 genommen, die an der Tabelle festgelegt werden können.
Wurd keine Auswahl getroffen, wird auch nichts angezeigt.
Die zu vergleichenen Datensätze werden mittels des aktuell aktiven Datensatz in der Maske bestimmt.
Die auszuwählen Datensätze werden anhand der Abfrage der Maske bestimmt. Das heißt das man bei den Auftragsposition in der Aufragsmaske nur die Auftragspositionen für den aktuell ausgewählten Auftrag angezeigt bekommt.
Wird mehr als ein Datensatz markiert, werden nur die markierten Datensätze in der Auswahl sichtbar. Bei zwei markierten Datensätzen können diese sofort über "Vergleichen" verglichen werden.
Der Aufruf der Funktion erfolgt in jeder Maske mittels Shift+Enter. Es können auch mehrere Vergleiche hintereinander aufgerufen werden.
Diese Funktion ist in jeder Maske, auch im Tabellenbrowser verfügbar.
Anwendungsbeispiel
Aufträge
Auftragsmaske: Vergleich der Aufträge. Es werden nur die markierten Datensätze angezeigt
Aufragspositionen
Auftragsmaske: Vergleich der Auftragspostion. Es werden alle Datensätze zum aktuellen Auftrag angezeigt.
Das Ergebniss wird dann in einer neuen Maske angezeigt.
Ergebniss des Dat
ensatzvergleiches
Für die Integration in die Maske musste ich die Klasse SysSetupFromRun überschreiben. Dort habe ich auch festgelegt wie der Datensatzvergleich aufgerufen wird. Leider konnte ich nur bereits vorhandene TaskIds verwenden und habe mich für Shift+Enter entscheiden. Dieses kann natürlich verändert werden, dazu ist nur ein Blick in das Makro Task erforderlich.
Wie immer auch hierzu das komplette Projekt als erste Beta Version (geschrieben in Microsoft Dynamics AX 4.01) als Download.
Labels, Security Keys usw. habe ich hierfür noch nicht angelegt.
Kommentare und Anregungen sind immer gerne willkommen.
(Verwendung auf eigende Gefahr, es wird keine Haftung übernommen)
SharedProject_CompareRecord_Ver_1.0.zip (3,69 KB)
Tuesday, June 12, 2007 8:43:04 PM (Mitteleuropäische Zeit, UTC+01:00) Mathias Füßler
Comments [0]
-
Trackback
Comments are closed.
Translate
Über/Kontakt
© Copyright 2012 Axel Kühn
Sign In
Navigation
Home
Microsoft Dynamics AX
Microsoft Dynamics AX Community
Microsoft Dynamics AX Developer Center
Axaptapedia
Dynamics User Group
MSDynamics.de
Impressum
Subscribe this blog
Subscribe in a reader
Blogroll
Arijit Basu
Axapta Blog
Blog around Microsoft Business Solutions Axapta by Helmut Wimmer
BlaBlubBlog
Der Blog von Kai Gloth
Dave Bowles
Dick Wenning
Ax(apta) start pages
Fred Shen
Harish Mohanbabu
jinx´s AX Blog
Everything about Microsoft Dynamcis AX
Lars Keller
All about .NET, VSTS, VSTO and more
Max Belugin
TaReMoTi Blog
Der Blog von Karsten Döring
Categories
.NET
Compact Framework
Allgemein
Dynamics Ax
Administration
AIF
Dynamics AX 2009
Dynamics AX 2012
Enterprise Portal
HowTo
Programmierung
Enterprise Portal
.NET
API
Tools
Updates
SQL Server
Archiv
<
May 2012
>
Sun
Mon
Tue
Wed
Thu
Fri
Sat
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
Statistik
Total Posts: 138
This Year: 1
This Month: 0
This Week: 0
Comments: 49
All Content © 2012, Axel Kühn
DasBlog theme 'Business' created by Christoph De Baene (delarou)