ich arbeite an einem Formular in dem links ein XbpBrowse 2Spalten aus einer temp.Tabelle enthält (STATUS + Name) und rechts daneben ist das Eingabe-Formular mit den SLEs, Checkbox, Dropdown u.ä. Für das Abspeichern der Werte habe ich mich jetzt nach Startschwierigkeiten dafür entschieden auf das EVENT xbeBRW_ItemMarked zu reagieren. Dadurch musste ich mir die vorherige Position in der DB und im XbpBrowse merken - diese setzen -> Werte aus Formular in den Datensatz speichern - und wieder zurück zu Datensatz/Zeile der nach ItemMarked gesetzt war.
Code: Alles auswählen
oPart := oDlg:childFromName( FORM_BROWSE_MOD )
SELECT 260
nRecVor := RecNo()
nRowVor := oPart:rowPos
DbGoto( nRecNo )
oPart:rowPos := nRowNo
DbRLock()
REPLACE AKTIV WITH bAktiv
REPLACE MODELL WITH cName
DbCommit()
oBrs:refreshCurrent()
oBrs:deHilite()
DbGoto( nRecVor )
oBrs:rowPos := nRowVor
oBrs:refreshCurrent()
oBrs:hilite()
folgendes habe ich jetzt versucht aber das funktioniert nicht:
Code: Alles auswählen
oBrs:addColumn( { |x| IIf( x==nil, AKTIV, AKTIV:=SetAppWindow():childFromName( FORM_MOD_CHECK_AKTIV ):getData() ) }, , aKopf[1] )
oBrs:addColumn( { |x| IIf( x==nil, rtrim(MODELL), MODELL:=SetAppWindow():childFromName( FORM_MOD_EDIT_NAME ):getData() ) }, , aKopf[2] )
Wenn eine andere Zeile angeklickt wird im XbpBrowse - dachte ich mir - soll vorm Wechsel die vorherige Zeile die Daten aus den Formular-Feldern nehmen und in die DB-Tabelle zurückschreiben..
danke wieder mal für eure Hilfe...