Ver Mensaje Individual
  #10  
Antiguo 17-12-2008
Galahad Galahad is offline
Miembro
 
Registrado: abr 2007
Posts: 218
Reputación: 18
Galahad Va por buen camino
mantenimiento

a ver si me explico mejor..

Cita:
Empezado por Sick boy Ver Mensaje
Ufff, si no lo entiendo mal, tu incias los valores del siguiente registro justo despues de crear el anterior????
el contexto es el de un mantenimiento (pantalla típica de programa de gestión para dar de alta,modificar o borrar por ejemplo clientes). yo hasta ahora, en paradox, cuando el usuario empieza a completar por ejemplo un nuevo cliente, busco él último código existente en la bd y le pongo el codigo siguiente a la vista (siempre trabajando sobre componentes dbware), claro, no puedo hacer esta operación de 'busqueda del codigo que le toca al nuevo cliente' en la claúsula DEFAULT, y tampoco puedo hacerla en el Trigger before insert, porque este evento se activa cuando el usuario 'confirma/graba' los datos del nuevo cliente.
Pero bueno, eso ya ha quedado solucionado con un stored procedure desde la parte del cliente.

Cita:
Empezado por Sick boy Ver Mensaje
En que parte de tu codigo haces el commit???
Sigue estando en el AfterPost??
si, al final he dejado esto,,
dataset.commit;
dataset.close;
dataset.open;
dataset.locate( ...)
a mi tampoco me gusta el locate,, de hecho nunca lo he utilizado en mis programas con paradox, pero...., está es la única manera que he encontrado de que cuando acabo de editar un registro y confirmo los cambios, al usuario se le quede en pantalla el registro modificado (al hacer el commit se cierra el juego de datos, y al hacer el open el 'puntero' se queda en el primer registro). He probado los bookmarks, pero no funcionan.


Cita:
Empezado por Sick boy Ver Mensaje
Lo siento, pero no se que significa un mantenimiento. Probablemente en españa tenga otro nombre, si me explicas el concepto seguro que te entenderemos.
A cuantas modificaciones por segundo se refiere "el uso intensivo"??
yo tambien soy de españa.,,, (alicante)..., creo que ya he explicado para mí lo que es un mantenimiento.., a este particular, antes has comentado que no utilizas componentes dbware,, en este tipo de procesos de alta,borrado,modificaciones, como lo haces ?, ¿ vuelcas un único registro sobre los por ejemplo edits del form y haces que al navegar por ejemplo con una serie de botones se vaya cargando un único registro en dichos edits ?.
yo hasta ahora siempre he utilizado componentes dbware, y me preocupa el hecho de que voy a tener algunas tablas grandes (30.000 registros), me temo que si utilizo la estructura anterior de que cuando grabo un registro nuevo hago 'dataset.close - dataset.open', me estoy trayendo al cliente los 30.000 registros, no es algo nada óptimo me temo, además los componentes fibplus no tienen componentes dbware en los que se pueden limitar el número de registros que digamos se puedan 'cargar' por cada petición de refresco del cliente por ejemplo.
disculpa sea tan pesado , pero es que tengo que cambiar muchas aplicaciones de paradox a firebird, unos cuantos centenares de forms y ya que voy a estar como mínimo un año , pretendo que la base principal sea lo mejor posible.

Cita:
Empezado por Sick boy Ver Mensaje
Y por cierto, actualmente no tienes ningun problema, verdad??
bueno, la cuestión es que ahora mismo, el mantenimiento, funcionar , funciona, pero claro antes de utilizar este mantenimiento como plantilla de otros 200-300 que voy a tener que hacer ,quisiera asegurarme de que el enfoque va a ser después el adecuado para una aplicación que pueda aumentar mucho de tamaño con facilidad.

.

Cita:
Empezado por Sick boy Ver Mensaje
PD: Cuando digo que algo esta bien o esta mal, es mi opinion, cada uno despues hace lo que le parece mejor.
totalmente de acuerdo, el intercambio de impresiones siempre es positivo a todos los niveles, gracias
Responder Con Cita