• Sábado 27 de Abril de 2024, 07:00

Autor Tema:  Ayuda Con Una Transaccion!!  (Leído 2157 veces)

girl18

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Ayuda Con Una Transaccion!!
« en: Miércoles 26 de Julio de 2006, 21:17 »
0
Hola  todos, necesito que alguien me ayude, con mi sistema, yo estoy haciendo uns sistema de inventario de activos fijos, estos activos se pueden descartar , donar y trasladar, bien mi problema consiste en que yo cree una tabla que me captura los traslados, ya que el traslado necesita los siguientes campos (num_solicitud,fecha del traslado, cod_activo f.k, y la ubicacion destino (que es dropdown)), de igual forma el codigo_activo es un dropdown el cual le puse que me mostrara el marbete y me esconda el codigo, entonces yo quiero que al momento de hacer un reporte de los activos traslados el mismo me muestre la ubicacion origen y la actual, pero no me lo hace, proque al momento de actualizar me borra la origen y se queda con la actual, entonces no c como hacer para que me muestre ambas informaciones.

Yo pense que si le agregaba a la tabla de traslados el campo de la ubicacion origen y que este se llenara automaticamente al escoger el codigo del activo funcionaria( a traves del enter), pero no c como hacer esto tampoco, ya que solo tengo mes y medio trabajando con esta herramienta y estoy aprendiendo. por favor si alguien me puede enviar un ejemplo o una guia de como hacer con mi problema, se los agradeceria muchisimo..

pierpiter

  • Miembro activo
  • **
  • Mensajes: 58
    • Ver Perfil
Re: Ayuda Con Una Transaccion!!
« Respuesta #1 en: Jueves 27 de Julio de 2006, 15:49 »
0
Hola, para programar la tecla enter tenés que crear un nuevo evento. Para hacer esto, abrí la ventana de script del datawindow, en cualquier evento. Anda al menú "Insert" y seleccioná "Event".
En "Event Name" ponele el nombre que quieras (es el nombre que va a tener el evento) y en "Event ID" selecciona del desplegable el "pbm_dwnprocessenter".
Ahora ya tenés el evento definido, cada vez que se presione enter se va a ejecutar ese evento. Si querés programarlo para una columna u objeto específico, lo que hago yo es esto:

Código: Text
  1.  
  2. // Tengo que procesar solamente cuando presiona enter
  3. // en el campo total....
  4. integer li_numcol
  5. // Extraígo el número de columna en la que estoy posicionado.
  6. li_numcol = this.getcolumn()
  7.  
  8. // pregunto por el número de columna en la que se presionó enter, si es la 5 proceso.
  9. if li_numcol = 5 then
  10.  
  11.     // ACA PONE TODO EL CODIGO QUE NECESITES PARA TU SISTEMA
  12.  
  13. end if
  14.  
  15.  

Ya esta más o menos explicado con los comentarios. Cualquier cosa preguntame, no hay problema.

En cuanto a lo otro, de que forma armas la datawindow? que tipo de datawindow estas usando? En que tabla tenés la ubicación de origen? Si esta en otra tabla, estan relacionadas por algún código?
Cuando puedas conta un poco más del problema a ver si te podemos ayudar, saludos.

girl18

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Re: Ayuda Con Una Transaccion!!
« Respuesta #2 en: Jueves 27 de Julio de 2006, 16:41 »
0
Hola piertpiter, si mira la ubicacion origen esta ubicada en otra tabla es decir en donde capturo  los activos y en la tabla de traslados tengo el codigo de esta tabla como llave foranea.  el datawindow es freeform.
entonces lo que debo de hacer es que cuando alguien quiera capturar un tralado de x equipo, yo necesito que se refleje el cambio de ubicacion del activo (el traslado es cambio de ubicacion del activo), pero mi problema es que no c como actualizar esa ubicacion  en la tabla de activos, ademas tampoco se como hacer que en reporte me muestre la ubicacion original y la actual.
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.

pierpiter

  • Miembro activo
  • **
  • Mensajes: 58
    • Ver Perfil
Re: Ayuda Con Una Transaccion!!
« Respuesta #3 en: Jueves 27 de Julio de 2006, 19:07 »
0
Hola, una de las cosas que haría yo es capturar los datos que hay en el datawindow y después hacer el update en la base. Por lo que veo en la imagen, los botones estan fuera del dw, por lo tanto en el botón guardar haría el update del activo seleccionado.
Esto lo haces usando funciones del datawindow (getitemstring, getitemnumber, etc.) todo depende de los tipos de datos que tengas.
También hay otra forma, que yo no la uso, quizás alguien más tenga idea de como se usa. Cuando estas en el modo de edición del dw, seleccioná el menú "Row" y dentro el menú "Update Properties". Ahí permite hacer updates de tabla, pero creo que deja de una sola.

En cuanto a lo de la ubicación origen y la actual, si tenés en la tabla los datos y estan relacionados, con seleccionar el campo origen y ponerlo en el datawindow, al hacer el retrieve del dw ya te lo traería.
Sino podés cargarlo mediante una consulta y agregarlo con la función setitem.

Si podés mandame el objeto exportado, o si tenés todo en una pbl como para ver los nombres y los objetos y la descripción de las tablas que estas usando.
Saludos.

jarvizu

  • Nuevo Miembro
  • *
  • Mensajes: 19
    • Ver Perfil
Re: Ayuda Con Una Transaccion!!
« Respuesta #4 en: Jueves 21 de Septiembre de 2006, 08:44 »
0
girl18...

Efectivamente como te dice el buen amigo pierpiter, puedes hacer la actualizacion de manera asincrona, es decir primero en una tabla y despues en otra, aunque puedes hacerlo tambien con una datawindow compuesta, pero seria mas dificil si estas empezando con PB, ahora por que no pones el esquema de tu BD y la PBL, para ver que podemos hacer, creo que el problema no es de programacion mas bien es de implementacion de las herramientas.

Bueno espero que te animes a poner la pbl y el esquema con el de las dos tablas que mencionas es suficiente no es necesario toda la BD.


Saludos!!!!






TIJUANA, B.C. Mexico