FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour duda array
Posts: 518
Joined: Fri Jun 29, 2012 12:49 PM
duda array
Posted: Sun Jun 21, 2015 08:07 AM
Hola,

Tengo un array multidimensional tal que así:

Code (fw): Select all Collapse
  LOCAL aArray := {    { "ORDEN",    "N", 20, 0 }, ;   
                           { "REFERENCIA",   "C", 80, 0 }, ;
                           { "NIF",       "C", 20, 0 }, ;
                           { "NOMBRE",    "C", 80, 0 }, ;
                           { "DIRECCION", "C", 80, 0 }, ;
                           { "POBLACION", "C", 80, 0 }, ;


Necesito que a todos los campos que tienen "C" y 80 les pueda asignar otro valor de longitud.

¿Cómo se hace automáticamente?.

Muy agradecida!.
Posts: 817
Joined: Sun Jun 15, 2008 07:47 PM
Re: duda array
Posted: Sun Jun 21, 2015 09:49 AM
Elvira eso es muy fácil...
No voy a hacer el programa pero te indico como para que tu lo desarrolles:

Code (fw): Select all Collapse
...

  LOCAL aArray := {    { "ORDEN",    "N", 20, 0 }, ;  
                           { "REFERENCIA",   "C", 80, 0 }, ;
                           { "NIF",       "C", 20, 0 }, ;
                           { "NOMBRE",    "C", 80, 0 }, ;
                           { "DIRECCION", "C", 80, 0 }, ;
                           { "POBLACION", "C", 80, 0 }, ;
 local nLen := len( aArray )
 local i

 for n := 1 to nLen
      if aArray[ i, 2 ] == 'C' .and. aArray[ i, 3 ] == 80
            aArray[ i, 3 ] := nNuevoLen // Aquí pondrías el nuevo valor
      end if
 next

...


Espero que la idea te valga :-)
______________________________________________________________________________

Sevilla - Andalucía
Posts: 817
Joined: Sun Jun 15, 2008 07:47 PM
Re: duda array
Posted: Fri Jul 03, 2015 11:54 PM
Perdón la n debe ser una i
Code (fw): Select all Collapse
 for n := 1 to nLen
      if aArray[ i, 2 ] == 'C' .and. aArray[ i, 3 ] == 80
            aArray[ i, 3 ] := nNuevoLen // Aquí pondrías el nuevo valor
      end if
 next

Code (fw): Select all Collapse
 
for i := 1 to nLen
      if aArray[ i, 2 ] == 'C' .and. aArray[ i, 3 ] == 80
            aArray[ i, 3 ] := nNuevoLen // Aquí pondrías el nuevo valor
      end if
 next
______________________________________________________________________________

Sevilla - Andalucía

Continue the discussion