Saludos cordiales
En mi aplicacion utilizo XBROWSE con arreglos obtenido de consultas SQL. En algunas ocasiones debo remover lineas segun condiciones de la misma, utilizo estas funciones que deseo compartirlas.
En mi aplicacion utilizo XBROWSE con arreglos obtenido de consultas SQL. En algunas ocasiones debo remover lineas segun condiciones de la misma, utilizo estas funciones que deseo compartirlas.
/*
// Remueve elementos de un arreglo al estilo AEVAL
//
*/
FUNCTION ADEPURA(aArray,bBlq)
LOCAL nAt
IF Len(aArray)>0 .AND. LEN(aArray[1])>1
DEFAULT bBlq:={|a,n| Empty(a[1])}
ELSE
DEFAULT bBlq:={|a,n| Empty(a)}
ENDIF
WHILE .T.
nAt:=ASCAN(aArray,bBlq)
IF nAt=0
EXIT
ENDIF
ARREDUCE(aArray,nAt)
ENDDO
RETURN aArray
/*
// Reduce el Arreglo
*/
FUNCTION ARREDUCE(aArray,nAt)
ADEL(aArray,nAt)
ASIZE(aArray,Len(aArray)-1)
RETURN aArray