EDITBROW.EXE

Zugriff, Engines, Konvertierung. Von ADS über DBF bis zu SQL.

Moderator: Moderatoren

Antworten
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

EDITBROW.EXE

Beitrag von AUGE_OHR »

hi,

es gibt doch C:\ALASKA\XPPW32\Source\samples\solution\xbpget\EDITBROW.EXE

Frage : wie hänge ich einen "neuen" Datensatz an zu editieren ?

mir ist schon klar das die Navigation von METHOD XbpGetColumn:keyBoard( nKey ) gesteuert wird.
"darüber" gibt es aber auch oBrowse

Code: Alles auswählen

oBrowse:hitBottomBlock := { || PostAppEvent( xbeE_ArrayHitEOF,,, oDlg ) }
aber da kommt er "zu oft" an.

also nun in der Event Schleife mit xbeK_INS ( was nicht in XbpGetColumn:keyBoard() benutzt wird )

Code: Alles auswählen

         CASE nEvent == xbeP_Keyboard .AND. mp1 == xbeK_INS

            nLen := LEN( aArray[ ARR_SRC ] [ 1 ] )
            IF nLen = 5
               cAlias := aArray[ ARR_SRC ] [ 1 ] [ 5 ]
            ENDIF

            AADD( aPart, SPACE( 32 ) )
            AADD( aPart, "C" )
            AADD( aPart, 10 )
            AADD( aPart, 0 )

            IF !EMPTY( cAlias )
               AADD( aPart, cAlias )
            ENDIF

            AADD( aArray[ ARR_SRC ], aPart )
            nLen := LEN( aArray[ ARR_SRC ] )
            aArray[ ARR_SORT ] := AEVAL( ARRAY( nLen ), { | x, i | x := i },,, .T. )

            lFirst := .T.
            oBrowse:goBottom()
            PostAppEvent( xbeK_ENTER,,, oBrowse )
hm ... na ja ... am "Ende" der Zeile muss ich aus dem "Edit" Modus raus bevor ich mit xbeK_INS eine neue Zeile "anfordere" ...

geht das nicht eleganter oder muss ich die ganze METHOD XbpGetColumn:keyBoard() "überschreiben" ?
gruss by OHR
Jimmy
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: EDITBROW.EXE

Beitrag von AUGE_OHR »

hi,

ich werde wohl nicht umher kommen die Column Class zu modifizieren ... es gibt kein "WHEN / VALID".
an das XbpGet() kommt man erst bei einem "::read" ran, also kann ich auch erst dann den o:preBlock und o:postBlock belegen :(

hat schon jemand dafür eine Lösung geschrieben ?
gruss by OHR
Jimmy
Antworten