Seite 1 von 1

verknüpfte Browser und ihre Aktualisierungen

Verfasst: Mo, 05. Dez 2016 12:14
von Manfred
Ich habe 4 Browser nebeneinander laufen, wobei jeder Browser vom vorhergehenden abhängig ist. Alles über Imtemmarked
der 1. scrollt und führt über Scopes, Relationen und Filter den 2. mit.
der 2. scrollt und führt dann über Scopes, Relationen und Filter den 3. mit
der 3. Scrollt und ...... den 4. mit
das klappt genau so, wie ich es möchte.
Leider gibt es Probleme, wenn ich im 2. scrolle und dann in den ersten gehe und dort scrolle. Es wird dann der 3. und 4. nicht aktualisiert.
Ich habe das so gelöst, dass ich in jedem Browse Itemmarked die Scopes und Filter für die jeweils folgenden Browser setze. Somit erreiche ich auf jeden FAll, das der jeweils weitere Browser vom Vorgänger aktualisiert wird. Aber immer nur vom direkten Vorgänger. Baue ich nun im 1.Browse Itemmarked für alle weiteren Browser die Scopes und Filter auch ein, klappt es. Ist das die elegante Lösung dafür, oder gibt es einen Trick dem Browse zu sagen: "Hey, es wurde die Zeile gemarkert, lass mal die eigene Routine laufen und aktualisiere die Nachfolger? Itemmarked wird ja nur angeregt, wenn der Cursor wirklich angesprochen wurde/wird, durch einen Klick, oder eine Bewegung vom user.

Re: verknüpfte Browser und ihre Aktualisierungen

Verfasst: Mo, 05. Dez 2016 12:19
von brandelh
Bei einer ähnlichen Konstellation, habe ich eine Routine, die die Filter / Scopes setzt und die wird aufgerufen wann immer sich in irgendeinem relevanten Feld der Such / Auswahl Zeile was ändert.
Bei dir könnte die jeweils die aktuelle Auswahl abfragen und die Auswahlen setzen.

Re: verknüpfte Browser und ihre Aktualisierungen

Verfasst: Mo, 05. Dez 2016 12:25
von Martin Altmann
Manfred,
Du brauchst doch nur den entsprechenden Event an den jeweiligen Browse zu senden - damit läuft die jeweils für den Slot hinterlegte Funktion los.

Viele Grüße,
Martin

Re: verknüpfte Browser und ihre Aktualisierungen

Verfasst: Mo, 05. Dez 2016 12:28
von Manfred
im Prinzip habe ich ja jetzt folgendes

Code: Alles auswählen

FUNCTION markedbrowse()
kommst Du vom 1. dann aktualsiere 2.3.4
kommst du vom 2. dann aktualisiere 3.4
kommst Du vom 3. dann aktualisiere 4
return .T.
Ich dachte nur es gäbe da was, as ich mal wieder übersehen.
OOps, Martin war schneller. Welchen Event meinst Du? Ich glaube ich habe da was falsches im Hinterkopf, was ich bisher probiert habe

Re: verknüpfte Browser und ihre Aktualisierungen

Verfasst: Mo, 05. Dez 2016 12:41
von Tom

Code: Alles auswählen

PostAppEvent(xbeBRW_ItemMarked,{nBrowseZeile_im_Ziel,nBrowseSpalte_im_Ziel},NIL,oZielBrowse)
Das Problem besteht vermutlich darin, dass Du ein sich gegenseitiges Aktualisieren auslöst, das irgendwann keinen Sinn mehr ergibt (oder nur noch vorwärts). Du solltest vielleicht auch einfach mal beobachten/debuggen, wann welches ItemMarked ausgelöst wird.

Re: verknüpfte Browser und ihre Aktualisierungen

Verfasst: Mo, 05. Dez 2016 12:42
von Martin Altmann
Hallo Manfred,
ich war davon ausgegangen, dass Du entsprechend die ITEM_MARKED-Slots nutzt - dann hättest Du entsprechend beim Markieren eines Eintrages den jeweils folgenden Browse aktualisieren können (dort dann auch den ersten Eintrag markieren, dann geht es jeweils automatisch durch).

Viele Grüße,
Martin

Re: verknüpfte Browser und ihre Aktualisierungen

Verfasst: Mo, 05. Dez 2016 12:48
von Manfred
@Tom,
das habe ich schon gemacht. Ich habe alle Codeblocks der Itemmarked in eine Funktion geschickt um zu sehen was passiert. Da kam ich eben drauf, dass es jeweils nur der browser ist, in dem ich scrolle.
@ Martin,
ja, den Slot benutze ich, aber der spricht nur an, wenn ich im jeweiligen browser stehe. Nicht wenn ich nur den anderen bewege und dann "synce"

Re: verknüpfte Browser und ihre Aktualisierungen

Verfasst: Mo, 05. Dez 2016 12:53
von Martin Altmann
Und genau in dem Fall postest Du einfach den entsprechenden Event an das Objekt mittels PostAppEvent (wie von Tom skizziert).

Viele Grüße,
Martin

Re: verknüpfte Browser und ihre Aktualisierungen

Verfasst: Mo, 05. Dez 2016 12:57
von Manfred
OK, das werde ich mal machen. Ich dachte das ginge noch anders.

Re: verknüpfte Browser und ihre Aktualisierungen

Verfasst: Mo, 05. Dez 2016 13:01
von Martin Altmann
Klar geht es auch anders - aber keinesfalls einfacher.

Viele Grüße,
Martin

Re: verknüpfte Browser und ihre Aktualisierungen

Verfasst: Mo, 05. Dez 2016 15:40
von AUGE_OHR
Manfred hat geschrieben:Alles über Itemmarked ...
das ist IMHO verkehrt denn dann ist er nicht o:Stable.
ich würde deshalb den o:Stablebock nehmen und dann sehen wo er steht.