Foros del Web » Programando para Internet » ASPX (.net) »

Variable Booleana cambia de Valor ella sola

Estas en el tema de Variable Booleana cambia de Valor ella sola en el foro de ASPX (.net) en Foros del Web. Me sucede una cosa extrañisima. Tengo una variable boleana que cambio su valor a true en un procedimiento, cuando vuelvo a eso procedimiento usando un ...
  #1 (permalink)  
Antiguo 26/01/2012, 09:02
 
Fecha de Ingreso: febrero-2010
Mensajes: 105
Antigüedad: 14 años, 2 meses
Puntos: 1
Variable Booleana cambia de Valor ella sola

Me sucede una cosa extrañisima.
Tengo una variable boleana que cambio su valor a true en un procedimiento, cuando vuelvo a eso procedimiento usando un timer, el valor a cambiado a false, ella solita.

A alguien le suena esto?

Muchas gracias.
  #2 (permalink)  
Antiguo 26/01/2012, 21:43
Avatar de ramirezmario7  
Fecha de Ingreso: febrero-2008
Ubicación: Medellín
Mensajes: 336
Antigüedad: 16 años, 2 meses
Puntos: 56
Respuesta: Variable Booleana cambia de Valor ella sola

Podrias mostrar en que parte de tu codigo creas esta variable y en donde cambia el valor.

Puede ser que con el postback se vuelva a crear la variable con el valor predeterminado.
  #3 (permalink)  
Antiguo 27/01/2012, 07:31
Avatar de acumulador  
Fecha de Ingreso: junio-2008
Ubicación: Medellin - Antiquia
Mensajes: 459
Antigüedad: 15 años, 10 meses
Puntos: 7
Respuesta: Variable Booleana cambia de Valor ella sola

No será que en el Activate, en el load no especificas bien el tipo de proyecto o algo del código. Pero supongo que le das un valor a la variable al iniciar el proceso y por tanto simepre toma el valor inicial, explícate mejor a ver como te ayudamos.
__________________
-----------------------------------------------------------------------------
Yo vivo de preguntar, saber no puede ser lujo...
  #4 (permalink)  
Antiguo 27/01/2012, 08:07
 
Fecha de Ingreso: febrero-2010
Mensajes: 105
Antigüedad: 14 años, 2 meses
Puntos: 1
Respuesta: Variable Booleana cambia de Valor ella sola

En esta parte del codigo es donde cambio los valores de la variable "cuento"
Me ocurre lo siguiente, cuando entra al primer If, el valor es True, este codigo lo tengo dentro de un timer, cuando vuelve a saltar el timer, el valor a cambiado a False ella sola.




Código ASP:
Ver original
  1. If tabla(13) = 2 And cuento = False Then
  2.             cuento = True
  3.             tiempoparo = DateTime.Now
  4.  
  5.         End If
  6.  
  7.         If tabla(13) = 1 And cuento = True Then
  8.             tiempotranscurrido = DateDiff(DateInterval.Second, tiempoparo, DateTime.Now)
  9.             TiempoRA = TiempoRA + tiempotranscurrido
  10.             cuento = False
  11.         End If

La manera de declarar la variable es de la forma habitual:
Dim cuento As Boolean
En ningún momento le doy un valor.

Gracias por sus respuestas
  #5 (permalink)  
Antiguo 27/01/2012, 08:17
Avatar de AWesker  
Fecha de Ingreso: octubre-2008
Mensajes: 177
Antigüedad: 15 años, 6 meses
Puntos: 27
Respuesta: Variable Booleana cambia de Valor ella sola

¿En qué evento declaras la variables? supongo que eso es a lo que quería llegar ramirezmario7. Si la declaras en el Load de la página, debes tener en cuenta que debe ir dentro de !IsPostBack (es decir, mientras no haya devolución de datos de parte del usuario).

Saludos...
  #6 (permalink)  
Antiguo 27/01/2012, 08:28
Avatar de ramirezmario7  
Fecha de Ingreso: febrero-2008
Ubicación: Medellín
Mensajes: 336
Antigüedad: 16 años, 2 meses
Puntos: 56
Respuesta: Variable Booleana cambia de Valor ella sola

Puedes intentar guardando la informacion en una variable de sesion de este modo

Código:
if session["cuento"] = null then
          session["cuento"] = cuento
else
          cuento = (bool)session["cuento"]

If tabla(13) = 2 And cuento = False Then
            cuento = True
            tiempoparo = DateTime.Now
 
        End If
 
        If tabla(13) = 1 And cuento = True Then
            tiempotranscurrido = DateDiff(DateInterval.Second, tiempoparo, DateTime.Now)
            TiempoRA = TiempoRA + tiempotranscurrido
            cuento = False
        End If
el codigo no estoy seguro que sea asi porque yo trabajo con C#, creo que en VB no existe null, cuadra el codigo como debe de ser.

Podrias decirme en donde estas creando la variable cuento.
  #7 (permalink)  
Antiguo 27/01/2012, 09:21
Avatar de acumulador  
Fecha de Ingreso: junio-2008
Ubicación: Medellin - Antiquia
Mensajes: 459
Antigüedad: 15 años, 10 meses
Puntos: 7
Respuesta: Variable Booleana cambia de Valor ella sola

Cita:
Iniciado por fernan2010 Ver Mensaje
En esta parte del codigo es donde cambio los valores de la variable "cuento"
Me ocurre lo siguiente, cuando entra al primer If, el valor es True, este codigo lo tengo dentro de un timer, cuando vuelve a saltar el timer, el valor a cambiado a False ella sola.




Código ASP:
Ver original
  1. If tabla(13) = 2 And cuento = False Then
  2.             cuento = True
  3.             tiempoparo = DateTime.Now
  4.  
  5.         End If
  6.  
  7.         If tabla(13) = 1 And cuento = True Then
  8.             tiempotranscurrido = DateDiff(DateInterval.Second, tiempoparo, DateTime.Now)
  9.             TiempoRA = TiempoRA + tiempotranscurrido
  10.             cuento = False
  11.         End If

La manera de declarar la variable es de la forma habitual:
Dim cuento As Boolean
En ningún momento le doy un valor.

Gracias por sus respuestas
No será que esta entrando a las dos condiciones pues cuando ingresa a la primera como dices es false por eso aseguras que entra al primer if y e cambia a true, y luego será que entra al segundo if?? y allí la variable pasa de nuevo a false
__________________
-----------------------------------------------------------------------------
Yo vivo de preguntar, saber no puede ser lujo...
  #8 (permalink)  
Antiguo 27/01/2012, 09:29
 
Fecha de Ingreso: febrero-2010
Mensajes: 105
Antigüedad: 14 años, 2 meses
Puntos: 1
Respuesta: Variable Booleana cambia de Valor ella sola

no, en el segundo if no entra.

Tiene que ser lo que han dicho anteriormente, lo unico que no se como declarar la variable dentro del load, para luego poder usarla en el resto de código.
  #9 (permalink)  
Antiguo 27/01/2012, 09:58
Avatar de AWesker  
Fecha de Ingreso: octubre-2008
Mensajes: 177
Antigüedad: 15 años, 6 meses
Puntos: 27
Respuesta: Variable Booleana cambia de Valor ella sola

Solo hay una forma de saberlo: comprobándolo...

Una forma de declararla sería:
Código ASP:
Ver original
  1. Protected Sub Page_Load(sender As Object, e As EventArgs)
  2.     If Not IsPostBack Then
  3.         Dim cuento As Boolean
  4.     End If
  5. End Sub

Si queres ahorrarte una par de líneas dentro del load:
Código ASP:
Ver original
  1. Dim cuento As Boolean
  2. Protected Sub Page_Load(sender As Object, e As EventArgs)
  3.  
  4. End Sub

Si te fijas bien, es una especie de variable global.

Proba y nos avisas...
  #10 (permalink)  
Antiguo 27/01/2012, 11:22
Avatar de ramirezmario7  
Fecha de Ingreso: febrero-2008
Ubicación: Medellín
Mensajes: 336
Antigüedad: 16 años, 2 meses
Puntos: 56
Respuesta: Variable Booleana cambia de Valor ella sola

No has probado con el ejemplo usando session que te puse, estoy seguro que eso te solucionara el problema.

Si usas la session recuerda eliminarla para que no te quede en memoria
Session.Remove("cuento");

Etiquetas: booleana, variables, cambios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:11.