Tengo una duda:
si tengo por ejemplo
Select 1
Use Ejemplo ALIAS aEjemplo SHARED
TWBrowse():lHScroll:= .F.
@ 2.5, .5 LISTBOX oLbx FIELDS Dtoc(aEjemplo->Fecha), aEjemplo->Nombre ;
HEADERS " Fecha", " Cliente";
FIELDSIZES 75, 65,75,65,400;
SIZE 615, 200 OF oWnd ;
oLbx:bkeydown:={|nKey,nFlag|DOKEY1(nKey,nFlag,oLbx)}
oLbx:nClrpane = { || SelColor( RECNO() ) }
oLbx:nLineStyle = 1
oLbx:aJustify = { 0, 0, 0, 0 }
oLbx:Setfocus()
METHOD FUNCTION DOKEY1(nKey,nFlag,oLbx)
local cKEY, nSeekrec, ckey2
local nRecNo8 := RecNo()
DO CASE
CASE nKEY == VK_RETURN
cTitle:="Modificacion y Consulta "
Alta2 (1,oLbx)
CASE nKEY == VK_INSERT
cTitle:="Alta de Clientes"
Alta2(2,oLbx)
CASE nKEY == VK_DELETE
if MsgYesNo( OemToAnsi( "Atenci¢n:" ) + CRLF + ;
OemToAnsi( "¨ Est seguro de " + ;
"querer borrar este Cliente ?" ) + CRLF + CRLF + ;
OemToAnsi( str(aEjemplo->Nombre) ) )
go nrecno8
If Bloqreg(5)
DELETE
Endif
UNLOCK
oLbx:Upstable()
oLbx:Refresh()
ENDCASE
RETURN NIL
FUNCTION BLOQREG
PARAMETERS ESPERA
PRIVATE PARA
IF LOCK()
RETURN(.T.)
ENDIF
PARA = (ESPERA= 0)
DO WHILE (PARA .OR. ESPERA > 0)
IF LOCK()
RETURN(.T.)
ENDIF
INKEY(.5)
ESPERA = ESPERA-.5
ENDDO
RETURN(.F.)
****************************************************************
despues de borrar un registro no, lo quita del listbox, se queda aunque no permite seleccionarlos, es decir si lo marca pero como si no actualizara el listbox,
algo estoy haciendo mal sin duda, alguna idea ???
saludos
Archivos Eliminados
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Re: Archivos Eliminados
En la claúsula del índice que uses, añade ... FOR ! Deleted()
Re: Archivos Eliminados
Gracias antonio, solo algo mas, no uso indice , tendre que hacer uno ???,
saludos
saludos
Re: Archivos Eliminados
Hola a todos
no se si estoy usando alguna clase equivocada pero no consigo hacer q se "refresque" correctamente el listbox de la base de datos, si uso la clase nativa de windows si lo elimina...
alguna idea o algun ejemplo para usar la clase de hernan en dbf ? o alguna clase que me recomienden para consultar y eliminar registros de una dbf -????
no se si estoy usando alguna clase equivocada pero no consigo hacer q se "refresque" correctamente el listbox de la base de datos, si uso la clase nativa de windows si lo elimina...
alguna idea o algun ejemplo para usar la clase de hernan en dbf ? o alguna clase que me recomienden para consultar y eliminar registros de una dbf -????
Re: Archivos Eliminados
Yadi
Yo utilizo esta funcion y me resulta ok, utilizo el FW 2.4 y en este caso el Listbox nativo, debe funcionar igual con los otros browses
Function DelItem( oLbx,cVersion )
LOCAL cCodItm:=Items->CODITM
LOCAL lResultado:=.F.
IF Acceso()"
// Movimiento del Almacen
USE BASEALM NEW SHARED Alias Almacen
Almacen->(OrdSetFocus(2))
IF (Almacen->( DbSeek(cCodItm)))
WHILE !Almacen->( EOF())
IF Almacen->ENTITM=cCodItm
IF Almacen->(RLock())
Almacen->(DbDelete())
lResultado:=.T.
ENDIF
ENDIF
Almacen->(DbSkip())
END
ENDIF
Almacen->(DbCloseArea())
SysRefresh()
oLbx:Refresh() // Repintamos el ListBox
ENDIF
Return lResultado
Saludos
Yo utilizo esta funcion y me resulta ok, utilizo el FW 2.4 y en este caso el Listbox nativo, debe funcionar igual con los otros browses
Function DelItem( oLbx,cVersion )
LOCAL cCodItm:=Items->CODITM
LOCAL lResultado:=.F.
IF Acceso()"
// Movimiento del Almacen
USE BASEALM NEW SHARED Alias Almacen
Almacen->(OrdSetFocus(2))
IF (Almacen->( DbSeek(cCodItm)))
WHILE !Almacen->( EOF())
IF Almacen->ENTITM=cCodItm
IF Almacen->(RLock())
Almacen->(DbDelete())
lResultado:=.T.
ENDIF
ENDIF
Almacen->(DbSkip())
END
ENDIF
Almacen->(DbCloseArea())
SysRefresh()
oLbx:Refresh() // Repintamos el ListBox
ENDIF
Return lResultado
Saludos
Luis Ponce
Re: Archivos Eliminados
Gracias Luis
Realmente estoy desesperada, uso la clase twbrowse 2.1 , el caso es que no puedo hacer q se refresque el listbox del ejemplo de arriba, aun creando un indice y poniendo la clausala que menciono el maestro Linares.
Es un listbox conteniendo registros de una base de datos el cual no esta indexado, al seleccionar un boton de "borrar", despues de la confirmacion lo debe borrar, pero no lo hace, solo lo marca, deje de usar la clase nativa de five para darle mejor apariencia al browse (dos colores por ejemplo), pero me encontre con este problema, alguna sugerencia o alguna clase que facilite esto, uso indices ntx,..........gracias
Realmente estoy desesperada, uso la clase twbrowse 2.1 , el caso es que no puedo hacer q se refresque el listbox del ejemplo de arriba, aun creando un indice y poniendo la clausala que menciono el maestro Linares.
Es un listbox conteniendo registros de una base de datos el cual no esta indexado, al seleccionar un boton de "borrar", despues de la confirmacion lo debe borrar, pero no lo hace, solo lo marca, deje de usar la clase nativa de five para darle mejor apariencia al browse (dos colores por ejemplo), pero me encontre con este problema, alguna sugerencia o alguna clase que facilite esto, uso indices ntx,..........gracias
Re: Archivos Eliminados
Yadira:
Si no usas índices, se me ocurre que uses un filtro para eliminar los registros eliminados y despues refrescas el browse.
Saludos
Si no usas índices, se me ocurre que uses un filtro para eliminar los registros eliminados y despues refrescas el browse.
Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Re: Archivos Eliminados
Hola de nuevo:
No lo van a creer, pero tenia una "fiesta" en el build.lnk y el build.bat que creo que confundian el browse, despues de analizar su valiosa ayuda, !! ya trabaja correctamente!!
No lo van a creer, pero tenia una "fiesta" en el build.lnk y el build.bat que creo que confundian el browse, despues de analizar su valiosa ayuda, !! ya trabaja correctamente!!