[Gelöst] Falsche Zeilenreihenfolge beim Filtern

4. Juni 2019 14:57

hallo,

ich habe ein ganz Merkwürdiges Phänomen.
Ich möchte eine Seite alle Bestellungen bestimmter Art erstellen. Als filter dient die Bestellart und ein Datumsfilter.
Nun ist das Ergebnis auf den 1. Blick ganz gut.
Alle Zeilen sind da, der Gruppenwechsel über den Kreditor findet statt. (Ich schreibe der Übersichtlichkeit halber die Kreditoren abwechselnd fett und normal.
Außerdem werden Summen gebildet pro Kreditor die in eine Spalte mit geschrieben werden.

Im Debugger ist dann etwas kurioses zu beobachten.
Die ersten 20 Zeilen werden schön nacheinander gelesen und ausgewertet. Danach kommt dann Zeile 1 nochmal , dann wieder Zeile 20 und dann geht es sauber weiter.
Sehen kann man das in der Spalte Gesamtsumme.

Kennt jemand so ein Phänomen ?

Komischerweise ist von doppelten lesen der Zeile 1 und 20 später nichts mehr zu sehen.

BC 13.0 / CU 03

Gruß Frank
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Zuletzt geändert von FrausDo am 15. Oktober 2019 16:18, insgesamt 2-mal geändert.

Re: Flasche Zeilenreihenfolge beim Filtern

4. Juni 2019 15:52

Hallo,

ich habe mal etwas weiter getestet und einen Zähler im
OnAfterGetRecord Trigger mitlaufen lassen.
Außerdem habe ich den Datumsfilter erweitert um mehr datensätze zu bekommen

Interessant ist dass es immer 20 Datensätze sind dann kommt er aus dem Tritt.
(Siehe rote Zeilen)
hat jemand eine Erklärung ?

Gruß Frank
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Re: Flasche Zeilenreihenfolge beim Filtern

5. Juni 2019 10:32

Hallo,

Ich habe das ganze im Web-Client getestet.
Da passiert das alles auch, aber alle 30 Zeilen.
Scheint ein grundsätzlichen Problem zu sein.

Mein Code dazu
im OnAfterGetRecord Trigger
Code:
Zaehler += 1;
IF "Buy-from Vendor No." <> AlterKreditor THEN BEGIN
  IF StyleTxt = 'Standard' THEN
    StyleTxt := 'Strong'
  ELSE
    StyleTxt := 'Standard';
END;
Vendor.GET("Buy-from Vendor No.");
Währung := Vendor."Currency Code";
IF Währung = '' THEN Währung := 'EUR';

IF "Buy-from Vendor No." = AlterKreditor THEN BEGIN
  Gesamtsumme := Gesamtsumme + TotalAmonut;
END ELSE BEGIN
  Gesamtsumme := TotalAmonut;
  AlterKreditor := "Buy-from Vendor No.";
  END;


Gruß Frank

Re: Falsche Zeilenreihenfolge beim Filtern

11. Juni 2019 21:40

Ich vermute mal der Windows Client blättert 20-Zeilen-weise, der Web Client 30 (Cache)? Aber das Phänomen ist mir noch nicht begegnet. Nutzt du ein aktuelles CU?

Re: Flasche Zeilenreihenfolge beim Filtern

12. Juni 2019 08:03

Wie schon beschrieben BC 13 CU03.
Das Phänomen tritt aber auch im aktuellen BC 13 CU auf.
Hab es gestern getestet.
Interessant ist, das wenn ich einen Zähler mitlaufen lasse tatsächlich nach der Zeile 20 die Zeile 23 kommt.
Das verwirrt mich besonders.
Zeile 21 und 22 werden trotz durchlaufen des OnAfterGetRecord Triggers NICHT in die Zeilen geschrieben.

Re: Flasche Zeilenreihenfolge beim Filtern

4. Oktober 2019 14:50

Hallo,

Ich habe das Problem einmal auf den Anfang reduziert.

Dieses Bild zeigt sich mir
Bestellungen.jpg


Das ist der Quellcode dazu:

Code:
OBJECT Page 60053 Test Bestellungen
{
  OBJECT-PROPERTIES
  {
    Date=04.10.19;
    Time=14:39:24;
    Modified=Yes;
    Version List=;
  }
  PROPERTIES
  {
    SourceTable=Table38;
    OnAfterGetRecord=BEGIN
                        Zaehler += 1;
                     END;

  }
  CONTROLS
  {
    { 50000;   ;Container ;
                Name=Allgemein;
                ContainerType=ContentArea }

    { 50001;1  ;Group     ;
                GroupType=Repeater }

    { 50002;2  ;Field     ;
                SourceExpr="No." }

    { 50003;2  ;Field     ;
                SourceExpr="Buy-from Vendor No." }

    { 50004;2  ;Field     ;
                Name=Zaehler;
                SourceExpr=Zaehler }

  }
  CODE
  {
    VAR
      Zaehler@50000 : Integer;

    BEGIN
    END.
  }
}



Auch wenn die Zeilen vollständig sind.
Es werden 2 Zeilen die schon gelesen wurden intern noch einmal gelesen.
Bei der von mir aufgeführten Summenbildung stört dieses zuviel lesen ungemein.
Oder hat da jemand eine Lösung ?

Für mich ist das ein NAV Fehler im Client !?

Wo und wie kann man das bei MS als Endkunde melden?

Bringt das überhaupt etwas ?

Wie sind da eure Erfahrungen

Gruß Frank
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Re: Flasche Zeilenreihenfolge beim Filtern

4. Oktober 2019 16:11

FrausDo hat geschrieben:Wo und wie kann man das bei MS als Endkunde melden?
Bringt das überhaupt etwas ?

Normalerweise über deinen Partner und bringen wird es mit Sicherheit etwas.

Re: Flasche Zeilenreihenfolge beim Filtern

7. Oktober 2019 08:16

Wahrscheinlich wäre es einfacher, wenn du eine temporäre Tabelle nimmst, statt Variablen auf der Page zu verwenden.

Re: Falsche Zeilenreihenfolge beim Filtern

7. Oktober 2019 08:55

Versuch mal folgendes:

Code:
IF Rec."No." <> xRec."No." THEN
  Zaehler += 1;

Re: Falsche Zeilenreihenfolge beim Filtern

14. Oktober 2019 10:24

Hallo Michael,

das bringt nicht. Die Zeile 21 ist Zeile 1
Die Zeile 22 ist dann Zeile 20.

Ich denke ich werde es mit einer Temp Tabelle Probieren und nur Addieren wenn der Insert klappt :)


Gruß Frank

Re: Falsche Zeilenreihenfolge beim Filtern

15. Oktober 2019 16:17

Mit der Temporären Tabelle funktioniert es

Gruß Frank