Foros del Web » Programando para Internet » ASP Clásico »

Insertar y Actualizar datos.

Estas en el tema de Insertar y Actualizar datos. en el foro de ASP Clásico en Foros del Web. Espero que alguien me pueda ayudar. Tengo una pantalla con un sistema de pestañas, el funcionamiento lo tengo bien, cuando pico sobre una pestaña que ...
  #1 (permalink)  
Antiguo 10/02/2006, 01:50
 
Fecha de Ingreso: noviembre-2005
Mensajes: 405
Antigüedad: 18 años, 7 meses
Puntos: 0
Insertar y Actualizar datos.

Espero que alguien me pueda ayudar.

Tengo una pantalla con un sistema de pestañas, el funcionamiento lo tengo bien, cuando pico sobre una pestaña que me muestre la información que toca.

Tengo 4 pestañas, y cada una de ellas contiene información de 4 tablas, la primera pestaña es la tabla principal y las otras tres están relacionadas a la primera con una relación de 1 a 1.

La primera pestaña tiene tres botones para Abrir, Guardar y Nuevo y en las otras pestañas solamente el botón de Guardar.

El botón de Abrir, llamará a una consulta que tendrá una relación con las cuatro tablas y cargará los datos en el lugar que toque de cada pestaña, pero el botón de Guardar si que hará referencia a cada de una de las tablas, creo que tiene sentido hacerlo, asi, el abrir, hace referencia a todos los datos de estas tablas ya que hay una relación de 1 a 1 y el hecho de grabar que sea a nivel de tabla que toca a cada una de las tablas.

El dilema que tengo, es el siguiente, cuando estoy introduciendo los datos, que son nuevos, tendría que hacerlo de tal manera que los datos de la primera pestaña que es la tabla principal, no estén guardados, las otras pestañas no pueda guardar nada, es decir, al entrar en la página, los botones de guardar de todas las pestañas menos la primera que estén en disabled, y cuando tenga grabado los datos de la primera pestaña, el estado de los botones se vuelvan a activar, la misma manera que cuando le de al botón de "abrir" y cargue un registro, todos los botones de "Guardar" tienen que estar activos.


Saludos
Jaime
  #2 (permalink)  
Antiguo 10/02/2006, 03:12
 
Fecha de Ingreso: noviembre-2005
Mensajes: 405
Antigüedad: 18 años, 7 meses
Puntos: 0
alguien puede ayudarme?
  #3 (permalink)  
Antiguo 10/02/2006, 03:16
 
Fecha de Ingreso: enero-2006
Ubicación: Madrid
Mensajes: 148
Antigüedad: 18 años, 4 meses
Puntos: 0
Es que no se si te entiendo muy bien, lo que quieres es que mientras estas actualizando con nuevos datos la bbdd los botones de guardar de el resto de pestañas se deshabiliten y en el momento que ha realizado la inserción que los habilite es eso? si no intenta explicarmelo mejor porque no lo he pillado entonces. ciao
  #4 (permalink)  
Antiguo 10/02/2006, 03:41
 
Fecha de Ingreso: noviembre-2005
Mensajes: 405
Antigüedad: 18 años, 7 meses
Puntos: 0
La idea es que incialmente todos los botones de guardar de todas las pestañas estan disabled menos el de la primera, ya que es donde están los campos de la tabla principal, una vez que he dado a guardar los datos de la primera pestaña, los botones de guardar del resto de las pestañas esten habilitadas. Una vez grabado los datos de la primera.

A lo mejor se puede hacer como referencia, en la primera pestaña que haya un campo oculto incialmente sin valor y que cuando he grabado los campos de la primera pestaña, obtenga el valor del código del registro, y cuando esté informado podamos habilitar los botones.
  #5 (permalink)  
Antiguo 10/02/2006, 04:13
 
Fecha de Ingreso: enero-2006
Ubicación: Madrid
Mensajes: 148
Antigüedad: 18 años, 4 meses
Puntos: 0
ok, hice algo parecido no hace mucho, pero sin pestañas.
Lo que yo haría es declararte el método OnClick_Guardar() sobre el boton guardar de la pestaña principal, en el momento que presionen sobre el boton, realizas la modificacion sobre la base de datos, o lo que tengas que hacer, y llamas a otro método que puedes llamar por ejemplo habilitar_botones_pestañas(), donde habilitas el resto de los botones de las pestañas, con eso ya deberia funcionar. Si los tienes definidos como una matriz el código será mas corto, si no será algo parecido a esto:

Código:
Function habilitar_botones_pestañas()
        bguardar_pestaña2.disabled=false
        bguardar_pestaña3.disabled=false
        bguardar_pestaña4.disabled=false
end function
El método onClick lo puedes hacer de distintas maneras dependiendo en que estes trabajando si solo fuese visual basic te lo declaras directamente pues es una funcion del boton, si es en asp como el botón estará declarado con html, le pone onClick=" onClickBoton()" y declarás la funcion abajo con lo que quieres que haga y que llame luego a deshabilitar el resto de los botones, espero que te sirva de algo ya me contarás ciao.
  #6 (permalink)  
Antiguo 10/02/2006, 04:33
 
Fecha de Ingreso: noviembre-2005
Mensajes: 405
Antigüedad: 18 años, 7 meses
Puntos: 0
Es en ASP en lo que trabajo : A ver si entiendo bien.

La parte de habilitar los botones la función la entiendo, pero no se como ligar lo que me explicas con ASP y Javascript.

Te importe escribirme en seudocódigo, como sería el montaje, no lo veo como compaginar el hecho de hacer la insercción de datos a la tabla con ASP y luego hacer el disabled de los botones.
  #7 (permalink)  
Antiguo 10/02/2006, 04:43
 
Fecha de Ingreso: enero-2006
Ubicación: Madrid
Mensajes: 148
Antigüedad: 18 años, 4 meses
Puntos: 0
no hace falta que hagas nada en javascript, te explico:
tienes tu boton guardar:
Código:
<input type="button" value="Guardar" onClick="onClickBoton">
mas abajo te declaras con código asp:

Código:
Function onClickBoton()
      'Entras en la base de datos
      'Modificas lo que tengas que modificar, si tienes que pasar algún parámetro
      'a la funcion, lo haces desde donde la llamas en el html del boton Guardar
      'Una vez terminas de modificar en la base de datos habilitas el resto de botones:
      habilitar_botones_pestañas
      'Fin de la funcion
end function

Function habilitar_botones_pestañas()
        bguardar_pestaña2.disabled=false
        bguardar_pestaña3.disabled=false
        bguardar_pestaña4.disabled=false
end function
  #8 (permalink)  
Antiguo 10/02/2006, 04:53
 
Fecha de Ingreso: noviembre-2005
Mensajes: 405
Antigüedad: 18 años, 7 meses
Puntos: 0
No pensaba que esto se podía hacer, pensaba que en el onclick solo podía ponder funciones de javascript, o sea, que tengo que ponerlo tal como tu me lo escribes
<input type="button" value="Guardar" onClick="onClickBoton">

y esto es valido?
<input type="button" value="Guardar" onClick="<% onClickBoton %> ">

Otra pregunta la función siempre que estar por debajo del input, o la puedo declarar arriba del html.

Otra pregunta, en el caso que tenga que pasar parámetros se hace como siempre.

Sobre esta función

<%
Function habilitar_botones_pestañas()
bguardar_pestaña2.disabled=false
bguardar_pestaña3.disabled=false
bguardar_pestaña4.disabled=false
end function
%>

Los botones de guardar sería asi :
<input type="Button" name="bguardar_pestaña2" value="Guardar" disabled>
<input type="Button" name="bguardar_pestaña3" value="Guardar" disabled>
<input type="Button" name="bguardar_pestaña4" value="Guardar" disabled>

Gracias
  #9 (permalink)  
Antiguo 10/02/2006, 05:23
 
Fecha de Ingreso: enero-2006
Ubicación: Madrid
Mensajes: 148
Antigüedad: 18 años, 4 meses
Puntos: 0
Si tienes toda la razon, se me ha pirao, en el onClick no puedes llamar a una funcion de asp, pero lo que si que puedes hacer es hacer todo lo que te he dicho en una nueva página asp llamando a la base de datos, y habilitando los botones, si no tendras que llamar a una funcion en javascript y hacerlo desde ahi, sino lo siento por no haberte podido ayudar.

para llamar a la nueva pagina al hacer click sería:
Código:
<input type="button" value="Guardar" onClick="javascript:window.open('otrapagina.asp')">
  #10 (permalink)  
Antiguo 10/02/2006, 05:53
 
Fecha de Ingreso: noviembre-2005
Mensajes: 405
Antigüedad: 18 años, 7 meses
Puntos: 0
Pues ahora ya no se como poder hacerlo.

No te preocupes.

El hecho de darle al botón de grabar, llamará a la misma página con un parámetro y hara la función de insertar o update los datos.

Luego faltaría hacer que los botones lo habilitara
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 01:07.