replace

Experto:
Usuario: Anónimo Fecha: 05/11/2009
Valoración: (5,00 sobre 5) Categoría: Visual FoxPro
04/11/2009
Usuario
Hola experto necesito revisar en toda mi tabla el codigo del cliente, cuando lo encuentre, en la condicion del la primera coincidencia lo reemplazare con "N" y el resto con "C", pero no esta resultandome con esta linea de codigos que tengo.... a todos le pone "C"
select tabla1
scan
set order to codigo
seek codigo
if found()
replace all condicion with "N"
else
replace all condicion with "C"
endif
endscan
05/11/2009
mitchelljuar, experto respondiendo en Visual FoxPro
Experto
Hay dos problemas el primero estás utilizando mal la sentencia Scan y segundo ¿qué representa código?
Espero respuesta.
05/11/2009
Usuario
Hola buen dia disculpe codigo representa el codigo del cliente que es de tipo caracter le menciono con un ejemplo del resultado que necesito. ingresa un cliente con el codigo 12345 en el año mas o menos 10 veces la primera vez necesito que lo localize y en condicion coloque "N" las otras 9 veces deberia ser "C" pero no puedo lograrlo
05/11/2009
mitchelljuar, experto respondiendo en Visual FoxPro
Experto
La solución podría ser la siguiente:
Locate For Tabla.codigo = "12345"
If Found() Then
  Replace Tabla.condicion With "N"
  Locate Rest For Tabla.codigo = "12345"
  Do While Found()
        Replace Tabla.condicion With "C"
        Continue
  Enddo
  Else
     Wait Window "No se encontró el código especificado."
Endif
Algo como lo anterior debería solucionar el problema.
Gracias. 
05/11/2009
Usuario
Gracias ahora si esta todo muy bien
Enlaces patrocinados