ich blicke da einfach nicht durch...
Kann mir da jemand die Augen öffnen?
Ich nutze die o.g. Funktion, um Daten in einem Array zur Auswahl anzubieten!
Das positionieren auf dem vorher ausgewählten Eintrag und das Übernehmen einer neuen Auswahl in das Feld funktioniert.
Ich habe jedoch die inkrementelle Suche eingeschaltet und die funktioniert partout nicht!
Bei jeder Taste, die ich drücke, sagt er, dass er was gefunden hat, aber er positioniert den Cursor nicht auf den entsprechenden Eintrag!
Code: Alles auswählen
::_plzBrowse:init()
::title := "Postleitzahlen editieren"
::lOk := True
::EnableChildResize := True
::Connect( select() )
::oBrowse:Connect( ::Connect() ) // assign Server to browse
::oBrowse:CursorMode := XBPBRW_CURSOR_CELL
::oBrowse:EnableAppend := .t.
::oBrowse:EnableResize := .t.
::oBrowse:QuickEdit := .t.
::oBrowse:EnableSearch := .t.
::oBrowse:QuickSearch := .t.
::oBrowse:hitTopBlock := {|| SetStatusMessage("Erste Postleitzahl...", GRA_CLR_RED, 200, .T. )}
::oBrowse:hitBottomBlock := {|| SetStatusMessage("Letzte Postleitzahl...", GRA_CLR_RED, 200, .T. )}
::oBrowse:PreAppendBlock := {|o, n| ::PreAppendCheck(o, n)}
aFields := { "NATIONAL", "PLZ", "ORT" }
aHead := { "Nationalität", "Postleitzahl", "Ort" }
aCol := ::oBrowse:addColumnDB(aHead, aFields)
aCol[1]:CellEditType( CELL_SLE )
aCol[1]:Picture := "@!"
aCol[1]:SelectBlock := {|o| SelectNat(self, o)}
aCol[1]:PostValidate := {|oB,oC,oE| V_CheckNat(self, oB, oC, oE)}
aCol[3]:CellEditType( CELL_SLE )
aCol[3]:Picture := "!XXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
::BuildMenu()
Code: Alles auswählen
Procedure SelectNat(oDlg, oCell)
LOCAL nRec
nRec := Max( ascan( MEMVAR->alaender, { |a| a[ 1 ] == alltrim( oCell:getValue() ) } ), 1 )
nRec := dsBrowseSingleChoice(oDlg, MEMVAR->alaender, ;
{{2, "Land", "C", 60 }, {1, "Nat.", "C", 5 }}, nRec, .T., ;
, .T., 650 )
if nRec > 0
oCell:setData( MEMVAR->alaender[ nRec, 1 ],, .T. )
oCell:WriteData()
endif
RETURN
Es würde mir reichen, wenn ich über die zweite Spalte des Arrays (die ja die erste im Browse ist) suchen könnte - habe auch probiert, die Arrayparameter für die Suchorder-Spalten (in der Hilfe als aOrder angegeben) mit anzugeben - aber ich werde aus der Hilfe nicht schlau!
Hat das irgendjemand von Euch in Benutzung?
Was mache ich falsch?
Viele Grüße,
Martin