----- Original Message -----From: Gerardo J. BiagiottiTo: ifclipper@...Sent: Friday, April 04, 2003 5:48 PMSubject: RE: [ifclipper] TBrowse y OrdScope.Nadie tiene alguna posible solución al respecto???
-----Mensaje original-----
De: Gerardo J. Biagiotti [mailto:biagiotti@...]
Enviado el: viernes, 04 de abril de 2003 0:24
Para: IFCLIPPER - GRUPO
Asunto: [ifclipper] TBrowse y OrdScope.
Tengo un módulo que visualiza datos de un DBF.
Para establecer los datos a mostrar utilizo el OrdScope:
//Aplica límites de lectura.
SELECT 1
SET SOFTSEEK ON
DBSEEK(cNroCUIT+DTOS(dDesde))
SET SOFTSEEK OFF
IF EOF()
ALERT("Cliente sin movimientos.")
RESTSCREEN(,,,,Pant_Princ)
LOOP END
ORDSCOPE(TOPSCOPE,cNroCUIT+DTOS(dDesde))
ORDSCOPE(BOTTOMSCOPE,cNroCUIT+DTOS(dHasta))
Luego de esto genero el objeto TBrowse:
oObj:= TBrowseDB(5,1,22,78)
oObj:colSep := COLSEP
oObj:headSep := HEADSEP
oObj:footSep := FOOTSEP
//TBColumn objects
column := TBColumnNew( " Fecha ", {|| Fecha_Vta })
oObj:addColumn( column )
column := TBColumnNew( "Tp", {|| TipCom_Vta})
oObj:addColumn( column )
//…… y otros campos más
WHILE .T.
WHILE ( !oObj:stabilize() )
END
IF ( oObj:stable )
nKey := InKey()
END
// Process key
IF !TBMoveCursor( oObj, nKey )
IF ( nKey == K_ESC )
EXIT
END
END
END
Al ejecutar el programa en modo protegido, el browser solo visualiza las 2 primeras columnas, dejando en blanco las siguientes, y luego de intentar navegar 3 o 4 registros sale dis sistema con el siguiente error:
Called line 0 in (b)MENU_CREAT
Called line 0 in REQUER_AFI
BLX286 : 1313 : exception error 0D : general protection fault, code = 0000h
Active host is DPMI (v5.10 iP6 15360 Kb)
Reg Value Limit Base Flags Segment Module File
CS 0257 F719 02A064CC FB00 0B SISTEMA C:\SPI\V60\SISTEMA.EXE
DS 02AF FFFF 029F64CC F300 16 SISTEMA C:\SPI\V60\SISTEMA.EXE
ES 05DF 3FFF 02B6AA40 F300 ****
SS 02AF FFFF 029F64CC F300 16 SISTEMA C:\SPI\V60\SISTEMA.EXE
[Code byte CS] C5 76 0A 8B 4E 0E D1 E9 [IP] F3 A5 73 01 A4 1F 5E 5F 8B E5
[Registers] AX=0004 BX=0276 CX=0002 DX=05DF CS:IP=0257:2510
SI=6A36 DI=4138 BP=69F2 SP=69EC
FL=3212 NV UP EI NT PL NZ AC
PO NC
[Stack value SS] 69F2 69F2 0085 0277 1426 6A40 69EA 75A2 0257 02E8 02AF 69FA
[SP] 02AF 1426 6A40 6A50 0C7B 0277 4138 05DF 6A36 02AF 0004 001E
[Stack frame SS] 0277 1426 6A40 69EA 75A2 0257 02E8 02AF 69FA 02AF 1426 6A40
[BP] 6A50 0C7B 0277 4138 05DF 6A36 02AF 0004 001E 6E4E 0024 0260
Si el mismo programa lo compilo en modo real aparece el siguiente error:
Unrecoverable error 415: Cannot open overlay file '
run-time error R6001
- null pointer assignment
Aparentemente el error se produce en la siguiente línea:
WHILE ( !oObj:stabilize() )
Si al código le saco los OrdScope y los reemplazo por Set Filter, todo funciona muy bien, pero el problema es que con el Set Filter en un ambiente de red es extremadamente lento.
Me falta algo en el código para compatibilizar el OrdScope con el TBrowse?
Gerardo J. Biagiotti
Analista de Sistemas
Marcos Juárez - Córdoba
Argentina
biagiotti@...
Tu uso de Yahoo! Grupos está sujeto a las Condiciones del servicio de Yahoo!.
Tu uso de Yahoo! Grupos está sujeto a las Condiciones del servicio de Yahoo!.