FoxPro/Visual FoxPro - ¡¡¡ AYUDAAAAA !!!! URGENTE!!!!!!!!!

 
Vista:

¡¡¡ AYUDAAAAA !!!! URGENTE!!!!!!!!!

Publicado por novato (24 intervenciones) el 12/10/2009 22:25:11
Tengo 2 tablas, una es PROD y la otra es COMPRASL, las 2 tienen un campo que es cod_pro lo que tengo que hacer es lo siguiente.

EN la tabla PROD hay un campo precio ese mismo campo hay en la tabla COMPRASL, tengo que actualizar la campo precio de la tabla COMPRASL dependiendo lo que diga la tabla PROD,

ahora como hago para hacer eso

yo pienso que con un FOR o un bucle se puede hacer porque tiene que ir por cada registro de la tabla PROD y de la tabla COMPRASL y las 2 tienen como 800 registros.

Espero puedan ayudarme, ya llevo dias piendo ayuda y nadie lo hace o si lo hacen no es lo que busco.

De antemano muchas gracias.

ojo con un replace all no se puede porque me agarraria solamente el primer registro de la tabla PROD. o si alguien sabe como para que vaya por cada registro y vaya actualizando la tabla COMPRASL se lo agradeceria.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:¡¡¡ AYUDAAAAA !!!! URGENTE!!!!!!!!!

Publicado por Cesar (65 intervenciones) el 13/10/2009 00:03:44
Puedes probar lo sgte:

sele 1
use PROD
go top
sele 2
use COMPRASL
sele 1
SCAN
wcod_pro=cod_pro
wprecio=precio
UPDATE COMPRASL SET precio=wprecio;
WHERE cod_pro=wcod_pro
ENDSCAN

Saludos desde Peru,
Cesar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:¡¡¡ AYUDAAAAA !!!! URGENTE!!!!!!!!!

Publicado por jose camilo (805 intervenciones) el 13/10/2009 20:35:02
lee sobre set relation to
pero para esto necesita indice en el campo k vas a relacionar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:¡¡¡ AYUDAAAAA !!!! URGENTE!!!!!!!!!

Publicado por novato (24 intervenciones) el 13/10/2009 21:32:21
claro pero quiero que sea uno por uno por eso necesito un for o un scan...o como lo haria? simplemente relacionandolo y hacer un replace all?

gracias por su ayuda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

AYUDAAAAA !!!! URGENTE!!!!!!!!!

Publicado por Mauricio (2 intervenciones) el 13/10/2009 22:04:15
De manera engorrosa, seria asi
USE prod IN 0
USE comprasl IN O
SELE prod && esta tabla se barrera totalmente
GO TOP
SCAN
SELE comprasl
GO TOP && esto por cada reg de prod debe buscar en todo comprasl
SCAN
IF prod.codigo = comprasl.codigo
REPLACE precio WITH prod.precio
ENDIF
ENDSCAN
ENDSCAN
*---*********************************
De manera mas rapida:
USE prod IN 0
USE comprasl IN O ORDER codigo && crear indice a comprasl
SELE prod
GO TOP
SCAN
SELE comprasl
IF SEEK(prod.codigo)
REPLACE precio WITH prod.precio
ENDIF
ENDSCAN
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:¡¡¡ AYUDAAAAA !!!! URGENTE!!!!!!!!!

Publicado por Cesar (65 intervenciones) el 14/10/2009 17:41:16
Novato,
Probaste el codigo que te respondii?. Fui el primero que respondi?
Pruebalo.

Saludos,
Cesar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:¡¡¡ AYUDAAAAA !!!! URGENTE!!!!!!!!!

Publicado por novato (24 intervenciones) el 14/10/2009 19:53:23
si ya me salio, gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar