No caso desta rotina, não sei como resolver. Poderiam ajudar?
Obs. não é bug, é só o aviso compilando com -w3
Compiling 'ZE_XHARB.prg'...
ZE_XHARB.prg(172) Warning W0032 Variable 'NTBCOLEND' is assigned but not used in function 'MBRZMOVE
(130)'
Código: Selecionar todos
FUNCTION MBrzMove(oTb,nMRow,nMCol,nTop,nLeft,nBottom,nRight)
LOCAL nTbCol, nTbColEnd, nTbRow
LOCAL lHandled := .f.
oTb:refreshall()
DO WHILE !oTb:stabilize()
ENDDO
IF nTop==NIL .OR. nLeft==NIL .OR. nBottom==NIL .OR. nRight==NIL
nTop := MBRZFDATA(oTb)
nBottom := MBRZLDATA(oTb)
nLeft := oTb:nLeft
nRight := oTb:nRight
ENDIF
nTbCol := COL()
nTbColEnd := nTbCol+oTb:colwidth(oTb:colpos)-1
nTbRow := ROW()
IF nMRow>=nTop .AND. nMRow<=nBottom .AND. nMCol>=nLeft .AND. nMCol<=nRight
IF nMCol < nTbCol
lHandled := .t.
DO WHILE nMCol < nTbCol .AND. oTb:colpos > oTb:leftvisible-oTb:freeze
oTb:left()
DO WHILE !oTb:stabilize()
ENDDO
nTbCol := COL()
nTbColEnd := nTbCol+oTb:colwidth(oTb:colpos)-1
ENDDO
ELSEIF nMCol > nTbColEnd
lHandled := .t.
DO WHILE nMCol > nTbCol .AND. nMCol > nTbColend .AND. oTb:colpos < oTb:rightvisible
oTb:right()
DO WHILE !oTb:stabilize()
ENDDO
nTbCol := COL()
nTbColEnd := nTbCol+oTb:colwidth(oTb:colpos)-1
ENDDO
ENDIF
IF nMRow < nTbRow
lHandled := .t.
DO WHILE nTbRow > nMRow
oTb:up()
nTbRow--
ENDDO
ELSEIF nMRow > nTbRow
lHandled := .t.
DO WHILE nTbRow < nMRow
oTb:down()
nTbRow++
ENDDO
ENDIF
ENDIF
IF lHandled
DO WHILE !oTb:stabilize()
ENDDO
ENDIF
RETURN lHandled

