Page 1 of 1

Problemas con variables

Posted: Wed Nov 12, 2008 10:32 am
by Andrés G.
Hola a todos,

En mi programa tengo una rutina para cambiar datos de un combobox, cuando hago doble clic entro en edición en una nueva ventana de forma que puedo rectificar los datos.
En esta ventana tengo un botón de cancelar y así dejar todo como estaba si no quiero medicarlo.
Para hacer esto, al entrar en la función hago una copia de la tabla de combobox en una variable nueva.
Si doy al botón aceptar retorna la modificada y si le doy a cancelar o cierro la ventan la copia.
La sorpresa es que cuando se modifica la original se modifica a la vez la copia así que no me sirve para nada.
¿Alguien sabe a que puede deberse esto?
Os pongo un ejemplo para que me entendáis:


FUNCTION AMTAULA(NP,TAULA,TI)

LOCAL FINESTRA2,SOR:=.F.,TAULAA

TAULAA=TAULA
DEFINE DIALOG FINESTRA2 FROM 1,1 TO 164,690 TITLE TI FONT TLLETRA PIXEL
............
@ 60,117 BUTTON "D'acord" SIZE 50,12 ACTION (SOR:=.T.,FINESTRA2:END()) PIXEL OF FINESTRA2
@ 60,177 BUTTON "Cancel·lar" SIZE 50,12 ACTION FINESTRA2:END() PIXEL OF FINESTRA2
ACTIVATE DIALOG FINESTRA2 CENTERED
IF SOR=.F.
RETURN TAULAA
ENDIF

RETURN TAULA


Recuerdos,

Andrés.

Posted: Wed Nov 12, 2008 11:17 am
by jrestojeda
No entiendo bien tu problema...
Quieres modificar el combobox en tiempo de ejecución??

Saludos, Esteban.

Posted: Wed Nov 12, 2008 11:50 am
by Andrés G.
No Esteban, el hecho del combobox es accesorio.

El problema reside en que, al copiar una variable a partir de otra, se me modifica el contenido de las dos automaticamente cuando yo solo he modificado una de ellas.

Gracias por tu interes.

Recuerdos,

Andrés

Posted: Wed Nov 12, 2008 12:15 pm
by karinha
Andrés G. wrote:No Esteban, el hecho del combobox es accesorio.

El problema reside en que, al copiar una variable a partir de otra, se me modifica el contenido de las dos automaticamente cuando yo solo he modificado una de ellas.

Gracias por tu interes.

Recuerdos,

Andrés
Mustra en la pratica, por favor.

Saludos.

Posted: Wed Nov 12, 2008 12:32 pm
by Andrés G.
Karinha,

En mi primer post hay un ejemplo de lo que digo.

http://forums.fivetechsoft.com/viewtopi ... 9406#69406

Gracias por contestar.

Recuerdos,

Andrés[/url]

Posted: Wed Nov 12, 2008 12:37 pm
by Loren
Andrés G., en tu ejemplo poco se vé. No obstante, casi seguro que los nombres de las variables coinciden con los nombre de _ de la DBF. Ahí debes tener el problema.

Un saludo.
LORENZO

Posted: Wed Nov 12, 2008 1:23 pm
by karinha
Andrés G. wrote:Karinha,

En mi primer post hay un ejemplo de lo que digo.

http://forums.fivetechsoft.com/viewtopi ... 9406#69406

Gracias por contestar.

Recuerdos,

Andrés[/url]
Andrés, asi no és posible detectar el problema.

Haga un DEMO, y envia para mi email que miro para ti:

kmt_karinha@pop.com.br

abrazos

Saludos.

Posted: Wed Nov 12, 2008 6:35 pm
by Carlos Mora
Hola Andrés,

cambia

Code: Select all

LOCAL FINESTRA2,SOR:=.F.,TAULAA
TAULAA=TAULA
DEFINE DIALOG

por

Code: Select all

LOCAL FINESTRA2,SOR:=.F.,TAULAA
TAULAA:= AClone( TAULA )
DEFINE DIALOG

Un saludo,

Carlos.

Posted: Wed Nov 12, 2008 7:49 pm
by QAZWSX2K
tu problema como dice carlos mora ya me paso una vez y si bien en clipper duro no daba problemas aqui si, para asignar un valor se debe usar ":=" en vez de solo "=", porque sino es como si estuvieras comparando en vez de asignando

Posted: Thu Nov 13, 2008 7:35 am
by Andrés G.
Gracias a todos por vuestro interes, ya lo he podido solucionar gracias a la aportación de Carlos, con ACLONE funciona a la perfección.

QAZWSX2K esto ya lo habia probado y tampoco funcionaba.

Lo dicho, gracias a todos por vuestras aportaciones.

Recuerdos,

Andrés.