Sigo con el replace

Hola amigo buenos días no quise molestarte pero no logro terminar este programita, necesito que ponga nuevos y consultantes ya hice todo lo que me dijiste pero no se donde esta mi error, solo necesito colocar en la condición "N" o "C" si el codigo_cliente no existe en la tabla quiere decir que es la primera vez que se atiende cuando vuelva por segunda vez el mismo cliente pondré "C", todo el código lo coloque en un prg porque en un botón de comando me sale un error que dice "que no pueden contener procedimientos o definiciones de clases anidadas", luego tuve que quita los selec porque no los reconce. Amigo es mucho pedir si te envío mi archivo solo es dos tablas y dos formularios gracias
use "C:\Informes\borrador.dbf" 
go top 
do while !eof()
 if siExiste(codigo_cliente) 
replace condicion with 'C' 
else 
replace condicion with 'N' 
endif 
use "C:\Informes\borrador.dbf" 
skip 
enddo 
use "C:\Informes\principal.dbf"
append from "C:\Informes\borrador.dbf"
 return &&fin 
 function siExiste(xcodigo_cliente) 
use "C:\Informes\principal.dbf" 
locate for codigo_cliente=xcodigo_cliente 
if found() 
xRet = .t. 
else 
xRet = .f. 
endif 
return(xRet)

1 Respuesta

Respuesta
1
Disculpa que te di esta solución que solo es valida en un archivo PRG, no sabia que estabas trabajando en un form, para solucionar esto debes quitar la función siExiste y ponerlo como un método de la siguiente manera.
Te vas en formulario - nuevo método, te pedirá el nombre y le pones siExiste el resto lo dejas todo igual, luego si vas a propiedades del form en otros encontraras el método que definiste, es como el método click también aparecerá en el listado de eventos, bueno abres y pegas el código de la función siExiste() pero solo a partir de la segunda linea, en la primera linea le pones
lparameter xcodigo_cliente
en vez de function siExiste(xcodigo_cliente)
luego el resto igual, ahora la diferencia que tendras tambien es cuando le llames, en vez de
if siExiste(codigo)
pondras asi
if thisform.siExiste(codigo)
Y listo, con esto sin errores, otro camino que puedes tomar es crear un prg totalmente aparte que se llame siExiste. Prg y pegas ahí todo el código, pero mejor pruebas la primera opción ya que trabajas con form y no estarás llenando de archivos tu aplicación.
Ok amigo gracias ya lo intente pero nada te muestro un ejemplo de como debería quedar
primero en la tabla borrador el campo condición esta vacío.
borrador                                             principal
codigo_cliente    condicion                  codigo_cliente           condicion
01 01 N
01 02 N
02 03 N
03 03 C
04 04 N
04 05 N
al final la tabla principal debería quedar así:
codigo_cliente      condicion
01 N
01 C
01 C
02 N
02 C
03 N
03 C
03 C
04 N
04 C
04 C
05 N
Entiendo, enviame tu código y tus tablas a [email protected] y así veré el problema en donde radica, tal vez te ayudare mejor.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas