Page 1 of 1

Ayuda con este codigo

Posted: Fri Jul 20, 2012 1:06 pm
by Orbex
Hola amigos
Utilizo el siguiente codigo para crear un BROWSE dentro de una ventana MDI que llamo desde un menu tipo TExplorerBar, todo funciona bien pero tengo el inconveniente que cuando el usuario esta bajando con las teclas del cursor dentro del BROWSE, al llegar al final de la ventana, los registros que se muestran son siempre el mismo, es decir, no se refresca (siempre muestra el ultimo), me estara faltando alguna instruccion ?

Espero haberme podido explicar

Gracias




DEFINE WINDOW oWnd1 FROM 0, 0 TO 600, 800 PIXEL TITLE "APEIRON-Cable & Wireless,S.A." MDI
oBar := TExplorerBar():New()
oPanel := oBar:AddPanel("Procesos diarios" )
oPanel:lSpecial := .T.
oPanel:AddLink("Registro de movimientos" ,{|| MENU01()},"X_ADD")
oPanel := oBar:AddPanel("Balistica" )
oPanel:AddLink("Ingresar prueba de balistica" ,bClick,"folderimg")
oPanel:AddLink("" ,bClick,"mipc")
oPanel:AddLink("" ,bClick,"sitiosred")
oPanel := oBar:AddPanel("Detalles" )
oPanel:cHtmlText := "<b>Odin</b><br>" +;
"<br size=5>" +;
"Sistema para Administracion y Control "+;
"de armas de fuego<br>" +;
"<br>" +;
"<b>Autor</b><br>" +;
"<br size=5>" +;
"TecnoSoft Panama,S.A.<br>"+;
"Servicio Tecnico: 6613-4357"
ACTIVATE WINDOW oWnd1 MAXIMIZED ON INIT MENU01() ON RESIZE IF(oWnd2#NIL,(oWnd2:nHeight:=oWnd1:nHeight, oWnd2:nWidth:=oWnd1:nRight),)
RETURN
//------------------------------------------------------------------------------------------------------------------------------------------------------
FUNC MENU01()
LOCAL oBar,oBrw
DEFINE WINDOW oWnd2 MDICHILD FROM 0, 0 TO oWnd1:nHeight, oWnd1:nRight-230 PIXEL TITLE "Inventario de Armas" NOSYSMENU NOICONIZE NOCAPTION OF oWnd1

SELE INV_EQ

@ 0,0 BROWSE oBrw ALIAS "INV_EQ" OF oWnd2 COLOR nCOLOR2,nCOLOR1
ADD COLUMN TO oBrw DATA FieldWBlock('MODELO',SELECT()) HEADER "MODELO" ALIGN 0,1,1 FIXED
ADD COLUMN TO oBrw DATA FieldWBlock('MACADDRESS',SELECT()) HEADER "UNIT-ADDRESS" ALIGN 0,1,1
ADD COLUMN TO oBrw DATA FieldWBlock('SERNO',SELECT()) HEADER "#SERIE" ALIGN 0,1,1
ADD COLUMN TO oBrw DATA FieldWBlock('NUMDEPO',SELECT()) HEADER "UBICACION" ALIGN 1,1,1 SIZE 70
ADD COLUMN TO oBrw DATA FieldWBlock('FINGRESO',SELECT()) HEADER "FECHA"+CHR(13)+"INGRESO" ALIGN 1,1,1 SIZE 85
ADD COLUMN TO oBrw DATA FieldWBlock('FSALIDA',SELECT()) HEADER "FECHA"+CHR(13)+"SALIDA" ALIGN 1,1,1 SIZE 85
ADD COLUMN TO oBrw DATA FieldWBlock('FREINGRESO',SELECT()) HEADER "FECHA"+CHR(13)+"REINGRESO" ALIGN 1,1,1 SIZE 85
ADD COLUMN TO oBrw DATA FieldWBlock('FINGRESO',SELECT()) HEADER "FECHA"+CHR(13)+"INGRESO" ALIGN 1,1,1 SIZE 85
ADD COLUMN TO oBrw DATA FieldWBlock('FULTTRAN',SELECT()) HEADER "FECHA"+CHR(13)+"Ult.TRANSAC" ALIGN 1,1,1 SIZE 85
ADD COLUMN TO oBrw DATA FieldWBlock('USUARIO',SELECT()) HEADER "USUARIO" ALIGN 0,1,1
ADD COLUMN TO oBrw DATA FieldWBlock('CLIENTE',SELECT()) HEADER "CLIENTE" ALIGN 0,1,1
ADD COLUMN TO oBrw DATA FieldWBlock('ORDEN',SELECT()) HEADER "#ORDEN" ALIGN 0,1,1
ADD COLUMN TO oBrw DATA FieldWBlock('SERVICIO',SELECT()) HEADER "SERVICIO" ALIGN 0,1,1
ADD COLUMN TO oBrw DATA FieldWBlock('FINSTAL',SELECT()) HEADER "FECHA"+CHR(13)+"INSTAL" ALIGN 1,1,1

oBrw:nHeightCell += 17
oBrw:nHeightHead := 20
oBrw:nLineStyle := 2
oBrw:SetColor({1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}, CLR_oBrw )

oWnd2:SetControl( oBrw )


ACTIVATE WINDOW oWnd2
RETU[]

Re: Ayuda con este codigo

Posted: Fri Jul 20, 2012 6:44 pm
by RSalazarU
Orbex:

Alguna vez vi ese comportamiento en algun browse, y se debia a que el indice de la tabla no estaba correcto. Reindexa o Recrea el indice de la tabla y proba nuevamente.

Atentamente.

Rolando.
Cochabamba, Bolivia.