FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Comparar Array
Posts: 189
Joined: Wed Apr 05, 2006 09:48 PM
Comparar Array
Posted: Thu Apr 17, 2008 10:01 AM

Hola Amigos

Existe alguna forma de poder comparar el valor de dos array ? el array es de varias dimensiones.

un saludo

Posts: 782
Joined: Wed Dec 19, 2007 07:50 AM
Re: Comparar Array
Posted: Thu Apr 17, 2008 12:56 PM
Frafive wrote: Existe alguna forma de poder comparar el valor de dos array ? el array es de varias dimensiones.

Prueba el siguiente código:
//-----------------------------------------------------------------------------------------------------//

Function AComp( aArr1, aArr2 )

   Local nEle

   If Empty( aArr1 ) .and. Empty( aArr2 )
      Return .T.
   ElseIf Empty( aArr1 ) .or. Empty( aArr2 )
      Return .F.
   ElseIf ValType( aArr1 ) != "A" .or. ValType( aArr2 ) != "A"
      Return .F.
   ElseIf Len( aArr1 ) != Len( aArr2 )
      Return .F.
   EndIf

   For nEle := 1 To Len( aArr1 )

      If ValType( aArr1[ nEle ] ) == "A" .and. ! AComp( aArr1[ nEle ], aArr2[ nEle ] )
         Return .F.
      ElseIf ValType( aArr1[ nEle ] ) != ValType( aArr2[ nEle ] )
         Return .F.
      ElseIf ! ( aArr1[ nEle ] == aArr2[ nEle ] )
         Return .F.
      EndIf

   Next

Return .T.

Saludos.

Manuel Mercado
manuelmercado at prodigy dot net dot mx
Posts: 189
Joined: Wed Apr 05, 2006 09:48 PM
Comparar Array
Posted: Thu Apr 17, 2008 02:37 PM

Gracias Manuel, pero no me funciona, los array son multidimensional,

array1:=aclone(array)

Meto el array1 en un browse, el usuario puede cambiar cualquier valor del array1, una vez cerrado el browse quiero comprobar si ha cambiado array1.

Un saludo

Posts: 498
Joined: Thu May 10, 2007 08:30 PM
Comparar Array
Posted: Thu Apr 17, 2008 04:39 PM

Pasa los array a string y comparalos. Por ejemplo:

cAntes = ASAVE(ARRAY1) Antes del browse
...
cDespues = ASAVE(ARRAY1) Después del browse
...
IF !( cAntes == cDespues )
HAN CANBIADO
ELSE
NO HAN CAMBIADO
ENDIF
...

Peaaaaaso de foro...

FWH 2007 - xHarbour - BCC55
Posts: 782
Joined: Wed Dec 19, 2007 07:50 AM
Comparar Array
Posted: Thu Apr 17, 2008 04:48 PM
Frafive wrote:Gracias Manuel, pero no me funciona, los array sonmultidimensional

Ya la probaste?, esa función se supone que debería comparar arrays multidimensionales.

Manuel Mercado
manuelmercado at prodigy dot net dot mx

Continue the discussion