![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Vamos a ver...
Te comento, yo no uso mucho los ibquery, de hecho nunca los he utilizado porque utilizo el componente ibdataset el cual me provee de un selectsql y demás funciones.
Ahora bien: imaginemos que tu haces una aplicación con un ibquery>ibtransaction>ibdatabase etc. y bueno tu programa es un control de existencias de productos en stock de un almacén de repuestos para aeronaves de guerra rusa (de los MiG o que se yo ). En ese momento hay dos tenderos trabajando y ambos tienen la lista de misiles en existencia en el monitor., y llega un cliente afgano a una de las cajas de venta y pide: necesito dos misiles Hellfire y dos toneles con gelatina de napalm; acto seguido el tendero ve en su lista que en efecto aun tienen dos misiles. Los despacha junto con el napalm y listo se va ha cocinar. Ahora llega otro con el otro tendero y este tenía activa la ventana de misiles, le piden un misil Hellfire y este dice tener dos; en efecto no hay ya ninguno en existencia, si le da refrescar o cierra y habré la ventana de existencias mostraría cero en existencias pero al no haberlo hecho dice tener dos misiles. Si estas personas hubiesen tenido el famoso trigger que mencionamos aquí, inmediatamente al modificar u/o eliminar la existencia de dichos misiles en stock se hubiera disparado un evento el cual refrescaría todos los programas cliente y al llegar el segundo cliente le habrían dicho que ya no hay misiles en venta.Espero haberme dado a entender porque como dije anteriormente no es mi fuerte Un saludo. Enviado desde mi IPad 3G |
|
#2
|
||||
|
||||
|
Es que un programa que trabaja de esa forma está mal planteado. No se tiene una ventana abierta con el stock, ahí todo el rato, eso es algo inútil, sino que cuando se selecciona el artículo es cuando se muestra el stock de ese momento. Cierto que también puede irse en ese momento al baño y cuando regrese ya lo han vendido en otro terminal, pero al aceptar la línea es cuando debería de comprobar el stock de ese momento.
Lo de las dobles comillas en el evento... no me había fijado, tendré que corregirlo ![]()
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#3
|
||||
|
||||
|
Ups!!!
Cita:
Ahora con lo del documento: ups! lo siento, no sabia que eras el autor pero bueno en fin todos ganamos algo en este hilo y bueno si te sirve de algo: busque y encontre otros ejemplos con comillas y me seguia dando error todo esto ya me habia arrancado todo el cabello ![]() |
|
#4
|
||||
|
||||
|
No, en este caso no soy el autor, sólo recopilé la información de Erika Martínez (la autora) y lo publiqué en formato pdf.
Ya está cambiado, con comillas simples.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#5
|
||||
|
||||
|
Hola
Hay muchas formas de hacelo, no digo que el gatito esta mal, solo digo que no es la unica. A mi no me gusta el dataset por muchas razones, prefiero hacerlo todo con sql, me parece mucho mas rapido. Como dice Casimiro, el programa no deberia tener las ventanas abiertas y aun asi hay muchas maneras de solucionarlo. Bueno, como ves, ni me gustan los tigres ni los dataset y podria dar muchas razones ![]() Saludos
__________________
Siempre Novato |
|
#6
|
||||
|
||||
|
Hola,
Para entender del todo lo que quieres hacer necesitas más que una simple lectura sobre: 1) Transacciones 2) Triggers o disparadores 3) Eventos En el FTP del club y en la misma web donde está el artículo sobre los eventos que estás consultando hay material justamente sobre estos tres puntos. No está demás mencionar que primeramente te tomes el debido tiempo para irte familiarizando con la documentación oficial de Firebird, que explican en lo particular a este caso como utilizar los triggers y eventos y muuucho más.En La Cara Oculta de Delphi 4 y en la 6 encontrarás amplio material sobre lo que hace a las transacciones y más en lo que hace a Delphi y el manejo de bases de datos en general. La idea básica es que tu crees un trigger after insert que dispare un evento (de allí que te sugieran una búsqueda con post_event). Esto ocasiona que el motor envíe los respectivos mensajes a los clientes. Ahora es el turno de la aplicación: tu debes disponer de un TIBEventAlert (creo recordar que era así el nombre... no Delphi en estos momentos) que capture el evento. Una vez que se capture tu haces lo que quieras. Para tu caso por ejemplo un simple refresh (O cierre y apertura) del dataset para que se muestre lo insertado. En esto, a nivel aplicación, indice el uso de las transacciones y el nivel de aislamiento. No tiene demasiada ciencia... es tu turno sentarte a leer el material. Saludos, |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Crear Trigger Interbase - Ayuda | BlueSteel | Firebird e Interbase | 6 | 27-11-2007 22:08:59 |
| Controlar un Disparador al momento de cancelar o eliminar | JoanKa | Varios | 1 | 30-06-2006 18:00:36 |
| Trigger en interbase | afarenas | Firebird e Interbase | 2 | 04-12-2004 15:35:04 |
| problema con disparador FB | marrullas | Firebird e Interbase | 2 | 03-08-2004 23:16:32 |
| Crear un Disparador Desde la Aplicacion | DANY | Firebird e Interbase | 0 | 12-11-2003 15:30:38 |
|