Page Summen von Repeater-Datensätzen darstellen

Bild Microsoft Dynamics NAV 2013 (aka "NAV 7")

Page Summen von Repeater-Datensätzen darstellen

Beitragvon stony » 6. Juni 2017 10:08

Hallo,
ich möchte gerne die Datensätze in einer Page zusätzliche als Summendatensätze (gruppiert) darstellen!

Es sollten wenn möglich in der gleichen Page mehrere Gruppendetails dargestellt werden.
Z.B. Gruppiert nach Verbr. Boden
Gruppiert nach Verbr. Boden und Verbr. Holz

Die Page ist ein Listenpage und ist aktuell nur mit einer Repeater-Gruppe befĂĽllt. Wobei die Daten mittels einer Funktion eingelesen werden.

Wie könnte ich das lösen.

Besten Dank und lg
stony
Dateianhänge
Daten.JPG
stony
 
Beiträge: 1100
Registriert: 24. April 2006 11:31
Bezug zu Microsoft Dynamics: End-Anwender

Re: Page Summen von Repeater-Datensätzen darstellen

Beitragvon sweikelt » 6. Juni 2017 16:17

Hi stony,

ich denke, du kannst das Ganze mittels Intentation lösen.

https://blogs.msdn.microsoft.com/nav/2010/10/20/some-tips-about-creating-tree-view-in-list-pages/
Benutzeravatar
sweikelt
Microsoft Partner
Microsoft Partner
 
Beiträge: 1781
Registriert: 18. November 2010 10:15
Wohnort: Oschatz
Realer Name: Stephan Weikelt
Arbeitsort: Berlin
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: 3-2018 | D365BC

Re: Page Summen von Repeater-Datensätzen darstellen

Beitragvon Raik Zobel » 9. Juni 2017 14:52

Hi,

die Gruppierungen müssen ggf. mit in die Tabelle eingefügt werden. Daher bietet es sich an die Pagetabelle temporär zu verwenden. (Propertie: SourceTableTemporary = Yes)
Wichtig ist es zu wissen, dass bei Verwendung von Einrückungen keine Spaltensortierung mehr möglich ist. Das müsste dann ggf. auch Programmiert werden, indem die Tabelle für jede Sortierung neu gefüllt wird. (z.B. über Actions: Sortieren nach Holz, Sortieren Nach Böden, ...)

Kleines Beispiel fĂĽr eine einfache EinrĂĽckung:
FĂĽr die Ăśberschrift (Gruppe: "Verwendung") gehe ich aus PerformancegrĂĽnden* durch eine separate Tabelle (die in meinem Fall eh schon da ist).
Nur auch Datensätze mit der jeweiligen Verwendung vorhanden sind, wird die Überschrift und gleich darunter die zugehörigen Datensätze eingefügt.
Um es mir bei der Sortierung etwas einfacher zu machen, werden die Datensätze beim Anlegen durchgezählt (Feld: "Sorting Order"). Dieses Feld nutze ich am Ende für die Sortierreihenfolge. (Rec.SETCURRENTKEY("Sorting Order");)
Bei den Datensätzen (Entries) wird die Einrückung auf 1 gestellt (Feld: "Intendation"). Bei der Überschrift ist das ja nicht nötig, da der Standardwert des Intendationfeldes schon 0 beträgt.

*Wenn du keine Tabelle für die Codes aus "Verb. Böden" und "Verb. Holz" hast, dann musst du die Daten sammeln. Bei einer großen Datenmenge kann das aber dauern, da würde ich schon fast von dem Vorhaben abraten.

SendHistory ist der Record und Rec ist die TEMPORĂ„RE SourceTable der Page
Code: Alles auswählen
//SORT RECORD
SendHistory.SETCURRENTKEY(Usage,"Sending Date");
SendHistory.ASCENDING(FALSE);

//COPY REC TO TEMPREC
SortOrderCount := 0;
DocumentUsage.RESET;
IF DocumentUsage.FINDSET THEN REPEAT
  SendHistory.SETRANGE(Usage,DocumentUsage."Document Usage");
  IF NOT SendHistory.ISEMPTY THEN BEGIN
    //--INSERT GROUP>-----------------------------
    IF NOT SkipGrouping THEN BEGIN
      Rec.INIT;
      Rec.Usage := DocumentUsage."Document Usage";
      Rec."Sorting Order" := SortOrderCount;
      SortOrderCount += 1;
      Rec.INSERT(TRUE); //TRUE = Generates Primary Key: GUID
    END;
    //--INSERT ENTRIES>---------------------------
    IF SendHistory.FINDSET THEN REPEAT
      Rec := SendHistory;
      Rec.Indentation := 1;
      Rec."Sorting Order" := SortOrderCount;
      SortOrderCount += 1;
      Rec.INSERT(FALSE);
    UNTIL SendHistory.NEXT = 0;
  END;
UNTIL DocumentUsage.NEXT = 0;

Rec.RESET;
Rec.SETCURRENTKEY("Sorting Order");

Microsoft.Dynamics.Nav.Client_2017-06-09_14-21-43.png
Benutzeravatar
Raik Zobel
 
Beiträge: 279
Registriert: 4. März 2013 13:43
Realer Name: Raik Zobel
Arbeitsort: Leipzig
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: 4.00SP3, 2013R2, 2016


ZurĂĽck zu NAV 2013

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast