express++ DCBRWOSE ITEMSELECTED 2. Mal falsch

Moderator: Moderatoren

Antworten
Alfred
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 476
Registriert: Do, 03. Mai 2007 12:37
Wohnort: München

express++ DCBRWOSE ITEMSELECTED 2. Mal falsch

Beitrag von Alfred »

Hallo,

Code: Alles auswählen

@ 3,13 DCBROWSE oBrowse1 ;
       SIZE 81.41,9.5 ;
       ITEMSELECTED{|uNil1,uNil2,self|MyBrowseEdit(oBrowse), ;
                    oBrowse1:RefreshAll(),;
                    DC_GETREFRESH(Getlist)} ;   
       PARENT oDialog1;
       NOHSCROLL;      
       PRESENTATION aPres     
Wenn ich MyBrowseEdit beende und die Zeile im DCBROWSE nochmals
anklicke, erhalte ich den letzten Datensatz. :?

Im DCBROWSE steht der Cursor auf dem ausgewähltne Datensatz,
der Cursor läßt sich jedoch nur nach oben oder seitlich bewegen.

Gruß
Alfred
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2936
Registriert: Sa, 24. Sep 2005 9:37
Wohnort: Berlin
Hat sich bedankt: 13 Mal
Danksagung erhalten: 34 Mal
Kontaktdaten:

Beitrag von Wolfgang Ciriack »

Ist das ein Tippfehler MyBrowseEdit(oBrowse) oder fehlt die 1 (oBrowse1) wirklich ?
Viele Grüße
Wolfgang
Alfred
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 476
Registriert: Do, 03. Mai 2007 12:37
Wohnort: München

Beitrag von Alfred »

Hallo Wolfgang,

leider kein Tippfehler.

Eher ein Verständnisproblem von mir. Ich habe eine Anregung von Tom
umgesetzt und war froh dass diese zunächst funktionierte.

Tatsächlich habe ich den Aufruf des Itemselected noch nicht verstanden.
Weder was uNil1, uNil2, self, noch die Übergabe von obrowse be-
wirken. In der ganzen Funktion habe ich z.B. keinen einzigen Bezug
auf obrowse. Habe unterstellt, dass dort der dcbrowse als ganzes
Object hinterlegt ist und deshalb einen anderen Variablennamen
gewählt.

Die Änderung auf obrowse1 ändert leider nichts an der Problematik.

Gruß
Alfred
Alfred
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 476
Registriert: Do, 03. Mai 2007 12:37
Wohnort: München

Beitrag von Alfred »

Hallo Wolfgang,

MyBrowseEdit() reicht natürlich völlig aus.

Der eigentliche Fehler liegt jedoch bei DC_GetRefresh(GetList), der
den Satzzeiger an das Ende der dbf verschiebt.

Beim Testen hat sich nun herausgestellt, dass oBrowse1:refreshall() für
die Änderung des Datensatzes und oColBetrag:refresh() für den footer
im DCBROWSE ausreicht.

Zu allem Überfluss hatte auch noch meine Funktion für die Abstimm-
summe den Datensatzzeiger verschoben.

Gruß
Alfred
Antworten