Browse mit Filter - Sortierungs Problem

Moderator: Moderatoren

Antworten
Ewald
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 475
Registriert: Sa, 08. Apr 2006 14:07
Wohnort: Datteln
Danksagung erhalten: 3 Mal
Kontaktdaten:

Browse mit Filter - Sortierungs Problem

Beitrag von Ewald »

Moin zusammen,
da ärgere ich mich schon eine Zeit lang mit rum. Wenn ich dieses Sinnlosprogramm starte kann ich durch einen Klick auf die Spaltenköpfe wie gewünscht sortieren. 1 x klick aufwärts dann 1 x klick auf die gleiche Spalte und es geht wieder abwärts. Alles super soweit. Nur wenn ich den Filter im Browse aktiviere ist Schluss damit. Ich kann 1 x auf die Spalte klicken und es wird richtig sortiert - beim 2. mal klicken auf die gleiche Spalte stürzt die Kiste ab.

Das passiert mir in jeder Anwendung, in der ich die Filteroption im Browse verwende. Ein möglicherweise hilfreiches errorlog wird nicht erzeugt.
Gibt es dafür wohl einen Lösung ?

Gruß
Ewald

Code: Alles auswählen

#include "dcdialog.ch"
#include "appevent.ch"
#include 'xbp.ch'
proc main
local getlist:={}
aarr:={}

aadd(aarr,{"Franz","Meier","Castrop"})
aadd(aarr,{"Josef","Müller","Dortmund"})
aadd(aarr,{"Hein","Mück","Recklinghausen"})

bfilter={|a|!empty(a[1])}
bsortcol := {|a,n,o| fsort(aarr,n,getlist) }

*@ 01,01 dcbrowse ob1 data aarr size 10,7 fit filter bfilter  // <--- Absturz
@ 01,01 dcbrowse ob1 data aarr size 10,7 fit                  // <--- funktioniert

dcbrowsecol element 1 header "Vorname" parent ob1 width 10 ;
            sort bsortcol LEFTBUTTON  
dcbrowsecol element 2 header "Name"    parent ob1 width 10 ;
            sort bsortcol LEFTBUTTON
dcbrowsecol element 3 header "Ort"     parent ob1 width 10 ;
            sort bsortcol LEFTBUTTON

@ 8,1 dcpushbutton caption "Ende " size 10,1 ;
       action {||dc_readguievent(DCGUI_EXIT_OK,Getlist)}

dcread gui fit ;
title " " 

return
*------------------------------------------------------
function fsort(aar,ncol,xlist)

asort ( aar,,, {|x,y|x[ncol] < y[ncol] } )

ob1:refreshall()
dc_getrefresh(xlist)

return .t.
*--------------------------------------------------------
proc appsys
return 
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: Browse mit Filter - Sortierungs Problem

Beitrag von Tom »

Hallo, Ewald.

Das ist in Build 260 von eXpress++ gefixt; vermutlich hast Du eine ältere Version. Siehe auch hier:
http://bb.donnay-software.com/donnay/vi ... f=2&t=1275
Herzlich,
Tom
Ewald
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 475
Registriert: Sa, 08. Apr 2006 14:07
Wohnort: Datteln
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: Browse mit Filter - Sortierungs Problem

Beitrag von Ewald »

Moin Tom,
das ist leider trotz der Änderungen nicht gefixt. Ein Kollege hat mir auch bestätigt, das es bei ihm mit der aktuellsten Version zum gleichen Fehler kommt. Evtl. kannst du meinen geposteten Code ja mal ausprobieren. Ich bekomme da keine klare Fehlerursache rausgefriemelt.
Bis denne mal
Ewald
Antworten