FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Modelo Black Box
Saludos foreros.
Estoy tratando de implementar el modelo de caja negra (black box) utilizando los componentes FibPlus 6.7 (Delphi 7, Firebird 2.0.1) y esta es parte de la estructura Esta es la tabla
Estos son los procedimientos para las diferentes operaciones. Para traer todos los datos:
Estos son los de manipulacion:
Y por ultimo este es para el refresh
Estos procedimientos los he probado desde ibexpert y funcionan de maravilla. Cuando pongos los repectivos execute procedure desde un componente Dataset de IBX funciona bien, pero al momento de utilizar el mismo componente Dataset de FibPlus este no ejecuta las operaciones de Insert y Update. Al momento de darle al boton de edicion me arroja el siguiente error: "Error of record updating: record does not exist". Pero el registro lo tengo a mano y veo por el sql monitor las sentencias que se ejecutan y veo la del execute procedure correspondiente al update. Si alguien sabe cual seria la configuracion adecuada para el dataset de fibplus se lo agradeceria. Hasta luego.
__________________
Gracias, Rolphy Reyes |
#2
|
||||
|
||||
Precisamente lo que haces en los SP, es lo que hace el componente Datasets de FIBPlus. Estas "reinventando la rueda", aunque quizás tenga una explicación que no alcanzo a ver.
Cita:
saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#3
|
||||
|
||||
Gracias Lepe por responder.
Pero cuando te refieres a que estoy "reinventando la rueda" en realidad no es así, te explico, sabes que se puede espiar que se esta enviando a X base de datos. Entonces se pueden ver los diferentes comandos de inserccion, actualizacion y demas con los nombres de las tablas, el usuario podria manipular tus sentencias y enviarlas a la BD ocasionandote problemas; sin embargo con los SP el usuario ve solamente execute procedure con el nombre del mismo y sus parametros, claro podria mandarte algun valor pero si haces bien tus SP los daños podrian ser menores. Volviendo ya a mi inquietud hice la prueba aqui en el trabajo, aca tengo el mismo Delphi 7, FibPlus 6.7 pero con FireBird 1.5, atacando la BD Employee en la tabla COUNTRY y funciono de maravilla tendre que ver si hay algo raro en mi ambiente de mi casa. Si alguien sabe, por favor no dude en responder.
__________________
Gracias, Rolphy Reyes |
#4
|
||||
|
||||
Saludos.
Ya encontre la solución a mi problema y esta en dos propiedades del DataSet que por alguna razón que desconozco actua diferente cuando utilizas Stored Procedure en las sentencias de manipulacion en vez de sentencias directas osea poner los insert, update y delete tal cual. Las propiedades son: poProtectedEdit y pfSetReadOnlyFields. Según la documentacion de ellos la primera sirve para poner en modo pesimista la edicion de un registro asi cualquier otro usuario que intente modificar un registro que esta siendo modificado por otro le manda una excepcion. Pero como mencione que esta propiedad se comporta diferente con los SP de tal manera que me envia el mensaje de error que comente anteriormente. La segunda es para poner en modo ReadOnly los campos calculados en el servidor pero vuelvod digo se comporta diferente con los SP de tal forma que pone en ReadOnly todos los campos. Espero que si alguien se encuentra con esta situacion esto le sirva de guia. Hasta luego.
__________________
Gracias, Rolphy Reyes |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Robert Graham CEO e Errata Security explica como hackear Gmail en Black Hat 2007 | gmontes | Noticias | 3 | 13-08-2007 17:36:47 |
La mujer modelo | ArdiIIa | La Taberna | 0 | 11-08-2007 16:06:11 |
Modelo s Hacienda PDF | Jack | Varios | 2 | 15-12-2005 20:22:47 |
modelo de datos | supermilloriver | Conexión con bases de datos | 1 | 23-07-2005 17:10:30 |
modelo com | rorra | Providers | 0 | 02-06-2004 04:42:43 |
|