Cerrar un indice Temporal (Solucionado)
Posted: Sat Aug 06, 2022 12:25 pm
Buenas
Estoy enredado en este tema y no sé como solucionarlo:
La cuestión es que tengo abiertas varias bases de datos:
Después llamo a una función para un informe:
Y ya en la función, genero un índice temporal en memoria:
y ahora viene el problema, cuando salgo de ésta función, elijo el orden que traía de la función principal.
Pero ésto no funciona, sigue estando el índice que he creado en memoria, como puedo destruir éste índice y volver al que tenía anteriormente.
He probado con Orddestroy('Tfecha1'), pero nada sigue éste índice, y quiero que vuelva al anterior.
Un Saludo y gracias de antemano
Estoy enredado en este tema y no sé como solucionarlo:
La cuestión es que tengo abiertas varias bases de datos:
Code: Select all | Expand
dbUseArea(.T.,,Publicas:cUnidad+Publicas:cSubd+"\Factura",aAlias[22],.T.)
(aAlias[22])->(OrdSetFocus("Codigo"))
(aAlias[22])->( dbGotop() )
dbUseArea(.T.,,Publicas:cUnidad+Publicas:cSubd+"\Inciden",aAlias[33],.T.)
(aAlias[33])->(OrdSetFocus("Orden"))
(aAlias[33])->( dbGotop() )
dbUseArea(.T.,,Publicas:cUnidad+Publicas:cSubd+"\ALBARAN",aAlias[24],.T.)
(aAlias[24])->(OrdSetFocus("Albaran"))
(aAlias[24])->( dbGotop() )
Después llamo a una función para un informe:
Code: Select all | Expand
DEFINE BUTTON RESOURCE "CAJAR" OF oBar NOBORDER MESSAGE "Listado de Contados Pendientes de Cobro" ACTION (nRegAct := (aAlias[24])->(RecNo()),Contadopendiente(aAlias),,(aAlias[24])->( dbgoto( nRegAct ) ),oLbx:Refresh());
WHEN Publicas:cAccesoL;
TOOLTIP "Listado de Contados Pendiestes de Cobro"
Y ya en la función, genero un índice temporal en memoria:
Code: Select all | Expand
static function contadopendiente(aAlias)
********************************
local oFont1, oFont2
local oPrinter,oPrn
local ctitle:= "LISTADO DE ALBARANES DE CONTADO PENDIENTES DE COBRO"
local nindex:=(aAlias[24])->(Ordsetfocus())
index on (aAlias[24])->Fecha TO "Tfecha1" FOR (aAlias[24])->tipo=2 .and. (aAlias[24])->liqui=.F. ADDITIVE MEMORY
y ahora viene el problema, cuando salgo de ésta función, elijo el orden que traía de la función principal.
Code: Select all | Expand
(aAlias[24])->(Ordsetfocus(nindex))
(aAlias[24])->(Dbgotop())
RETURN NIL
Pero ésto no funciona, sigue estando el índice que he creado en memoria, como puedo destruir éste índice y volver al que tenía anteriormente.
He probado con Orddestroy('Tfecha1'), pero nada sigue éste índice, y quiero que vuelva al anterior.
Un Saludo y gracias de antemano